Soft Delete Pitr Azure Storage
Soft Deletes and Point in Time Restoreπ
πΉ 1. Soft Deleteπ
Soft delete = "safety net" for accidental deletion. When enabled, deleted data isnβt immediately removed - instead, itβs kept for a retention period so you can restore it.
Where it appliesπ
-
Azure Blob Storage / Data Lake Storage Gen2
-
When you delete a blob or snapshot, it goes into a soft-delete state.
- Retention period: 1-365 days (configurable).
-
You can list and restore these blobs from the portal, PowerShell, or CLI.
-
Azure Files
-
Protects deleted file shares.
-
Azure SQL Database / Managed Instance
-
Soft delete applies to backups. Deleted database backups are retained for 7 days by default.
π Example (Blob Storage):
- Delete a blob at
container1/data.csv
. - Itβs recoverable for (say) 30 days.
- After 30 days, itβs permanently purged.
πΉ 2. Point-in-Time Restore (PITR)π
PITR = restore database to a specific time within a retention period. It uses continuous transaction log backups + full/differential backups.
Where it appliesπ
-
Azure SQL Database
-
Default retention: 7β35 days (depending on service tier).
- You can restore to any second within that window.
-
PITR creates a new database (it doesnβt overwrite the original).
-
Cosmos DB
-
Continuous backup with PITR up to 30 days.
-
Azure Blob Storage
-
Versioning + change feed + soft delete together simulate PITR at object level.
π Example (SQL Database):
- Retention set to 14 days.
- A DROP TABLE happened at
2025-08-25 10:00:00
. - You can restore the database to
2025-08-25 09:59:59
and recover data.
π Differenceπ
Feature | Purpose | Retention |
---|---|---|
Soft Delete | Recover deleted data (blob, file share, backups). | 1β365 days (configurable) |
PITR | Restore entire DB/container to any time in past. | SQL: 7β35 days (default) |
β When to Useπ
- Soft delete β accidental object deletion (blob/file/share/backup).
- PITR β logical corruption, dropped table, wrong update query, ransomware attack.