Removing your files from S3 can cost thousands of dollars
one.valeski.org
one.valeski.org
Except that, oops, S3 only passed 100 billion objects a couple of months ago, and at its current rate of growth is probably still under 150 billion, never mind 200 or 290 billion.
My guess is that the "FAIL" here is whatever process he's using for deleting files -- not in S3 itself.
Would it be naive of me to assume that no single person/company is making up a few percentage points of all S3 objects?
We keep three copies of each, but since S3 does that for you I think we shouldn't multiply by 3.
3 billion files is a lot of files, but it isn't that extreme, he could very well be telling the truth.
- Billions is the correct magnitude. It's the result of Gnip's aggregation of multiple Twitter-firehose-scale feeds over a year. They are massive users of S3 storage.
- I'm unsure why he's using an XL instance in this case, but I know he's been experimenting heavily with different configs to improve performance
- How do you get sustained 700 deletes a second? I'm not being facetious, I see much slower performance using commercial and open-source interfaces to S3 like s3cmd or Bucket Explorer. I'd love to find some faster approaches.
It's not a trivial task, but reasonably exprienced Python (or maybe even C) programmer would do it easily. (I'd say in a couple of days) And I can confirm that even on EC2 small instances 700 HTTP req's a sec is achievable (not sure about S3 API usage limiting).
http://paultyma.blogspot.com/2008/03/writing-java-multithrea...
I spent quite a bit of time working w/ the S3 team at Amazon to try and come up with a better model, but we all agreed on my approach (mind you, it could likely be done more efficiently) as option 'a', and option 'b' was to delete the account and just let Amazon reap the data.
The problem that underlies the problem the author was having is that S3 is quite slow and you can't do batch deletes. On top of that, they limit the number of API requests you can make per second. In some case it has been faster to download an object and re-upload it again than do a copy.