Protecting Data from Accidental Deletion in Amazon S3
Amazon S3 versioning allows users to store multiple versions of an object within a single bucket. This feature can be helpful in retrieving previous versions of an object due to unintended changes, user errors, or application errors. When versioning is enabled for a bucket, Amazon S3 keeps multiple copies of the same object, even when numerous write requests are made concurrently.
Versioning protects against data loss by allowing users to recover accidentally deleted or overwritten objects. When an object is deleted, Amazon S3 adds a delete marker rather than erasing it. The version indicated by the delete marker becomes the current one. Overwriting an object creates a new version, meaning previous versions can be undone.
It is important to note that versioning is not automatically enabled in Amazon S3, and users must allow it to be at the bucket level. When versioning is enabled, removing objects from a bucket requires additional...