Question

I am currently using S3 to store large quantities of account level data such as images, text files and other forms of durable content that users upload in my application. I am looking to take an incremental snapshot of this data (once per week) and ship it off to another S3 bucket. I'd like to do this in order to protect against accidentally data loss, i.e. one of our engineers accidentally deleting a chunk of data in the S3 browser.

Can anyone suggest some methodology for achieving this? Would we need to host our own backup application on an EC2 instance? Is there an application that will handle this out of the box? The data can go into S3 Glacier and doesn't need to be readily accessible, it's more of an insurance policy than anything else.

EDIT 1

I believe switching on versioning maybe the answer (continuing to research this): http://docs.amazonwebservices.com/AmazonS3/latest/dev/Versioning.html

EDIT 2

For others looking for answers to this question, there a good thread on ServerFault. I only came across this later:

https://serverfault.com/questions/9171/aws-s3-bucket-backups

Was it helpful?

Solution

Enabling versioning on your bucket is the right solution. It can be used to protect both against accidental deletes and overwrites as well.

There's a question on the S3 FAQ, under "Data Protection", that discusses exactly this issue (accidental deletes/overwrites): http://aws.amazon.com/s3/faqs/#Why_should_I_use_Versioning

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top