Azure ได้ออกฟีเจอร์เพื่อช่วยนำไฟล์ที่ถูกลบไปบน Blobs Storage กลับคืนมา พร้อมกันนี้ยังช่วยแก้ปัญหาเรื่องไฟล์ที่ถูกลบไปแล้วจะโดนเขียนทับ โดยฟังก์ชันนี้เรียกว่า ‘Soft Delete’ ซึ่งมีให้ทดลองใช้แล้วทุก Regions

หลักการของ Soft Delete
เมื่อข้อมูลถูกลบมันจะถูกเปลี่ยนสถานะเป็น Soft delete ก่อนและถ้าหากถูกเขียนทับมันจะมีการทำ Snapshot เพื่อเก็บสถานะของข้อมูลที่ถูกเขียนทับ โดย Object ที่เป็น Soft Deleted จะไม่สามารถเห็นได้จนกว่าจะถูกลิสต์ออกมาอย่างชัดเจน โดยผู้ใช้งานสามารถตั้งค่าระยะเวลาเก็บข้อมูล Soft Deleted เพื่อนำกลับมาได้ก่อนมันจะสูญหายไปอย่างถาวร ตัวอย่างรูปด้านบน B0 คือข้อมูลที่เป็น Soft Delete และเมื่อถูกเขียนทับโดย B1 มันจะเกิด Snapshot ของ B0 ถ้าหาก Blob ถูกลบ B1 ก็จะกลายเป็น Soft Delete ด้วยเช่นเดียวกัน
ผู้ใช้งานไม่ต้องเปลี่ยนแปลงแอปพลิเคชันให้เข้ากับฟีเจอร์นี้ แต่ระหว่างการทดสอบจะไม่อนุญาตให้ตั้งค่า Blob Tier กับ Blob Snapshot ซึ่ง Soft Delete จะสร้าง snapshot เพื่อป้องกันการเขียนทับข้อมูล ซึ่งทาง Azure กำลังหาโซลูชันเพื่อทำ Blob Tier กับ Snapshot ของ Soft Delete อยู่เช่นกัน โดยปกติแล้ว Soft Delete ไม่ได้เปิดแบบ Default เมื่อบัญชีถูกสร้างใหม่ โดยทุกประเภทและทุกลำดับชั้นของบัญชี Storage รองรับกับฟีเจอร์ Soft Delete อย่างไรก็ตามมันไม่ได้ช่วยป้องกันการลบบัญชีต่างๆ หรือ Container ในเรื่องค่าใช้จ่ายจะขึ้นตามข้อมูลที่ Active ผู้สนใจสามารถตรวจสอบราคาได้ที่นี่

วิธีเปิดการใช้งานคือเข้าไปที่หน้า Azure Portal ใน Blob Service จะมีเมนู Soft Delete ตามรูปด้านบนส่วนในการกู้คืนข้อมูลหรือความสามารถอื่นๆ ผู้สนใจสามารถเข้าไปดูแบบเต็มๆ ได้ที่ https://docs.microsoft.com/en-us/azure/storage/blobs/storage-blob-soft-delete หรือ ตัวอย่างการใช้งานด้วย CLI ต่างๆ ที่ https://github.com/Azure-Samples/storage-dotnet-blob-soft-delete