DreamObjects vs. S3


I am a Dreamhost advocate and a developer.

I am curious if anyone can point me to the benefits of using DreamObjects vs. Amazon’s S3?

This page leads me to believe that they function the same but using DreamObjects is about 7x more expensive, but I wonder if I am missing something.

So, Amazon charges $0.125 per GB for the first 1 TB of storage. DreamObjects costs $0.07 per GB for all of your storage, and if you pick a plan, can get you down as low as $0.044 per GB.

DreamObjects is significantly less expensive than Amazon S3!
In other words:

Amazon S3: 12.5 cents per GB to start.
DreamObjects: 7 cents per GB to start.

This is, unfortunately, an oversimplification. S3 charges based on your average usage over the course of a month - allowing true “utility-style” usage with storage loads which vary over the course of a month. DreamHost charges based on peak usage, so if your peak usage is more than around double your average usage over the month, DreamObjects is actually more expensive.

A lot of loads actually end up more expensive like this. If you shove many files to DreamObjects in the second half of your billing cycle, you get charged as though they were there the whole time. Similarly, if you need to store a large file just briefly, for example while rotating backups, you would get billed for storing it all the way until the end of the cycle, even if it is only there for a few hours.

There is a “Suggestion” on the panel for DreamHost to resolve this - I was surprised to find out that there is such a difference in how each product is billed!

Good point! Usage patterns will definitely cause a difference in price between the two services.

S3 uses the calculated GB-Hours stored at tiered rates + API request charges + data transfer pricing at tiered rates to determine the monthly bill. To me, that is much too complicated.

We went with a simple approach: peak storage + total download, both at flat rates. I think that is much easier to understand and will be significantly cheaper for most people.

I completely agree that the rate tiers and API request charges are complications that are best avoided.

That said, ease of understanding to me correlates highly with how intuitive and easily-to-anticipate something is. Much of the allure of cloud services is the idea that an individual user pays only for the services they use, and the service provider can offer low incremental rates by aggregating many users’ usage.

Finding the maximum-usage clause in the DreamObjects fine print was unexpected to me because it does not seem fair to advertise DO as a cloud service. DreamHost is effectively selling remote disk space in a traditional $/GB model, with the only difference being that the plan size adjusts automatically each month.

A flat rate on GB-hours (advertised as GB-months) would be extremely intuitive: your stuff costs money while it’s on DH’s servers, and doesn’t while it’s not. If you store a file for half a month - it costs you half as much! Replace a file with a same-sized file in the middle of the month, maybe with an hour or two overlap, and you’d get charged for the same space as one file being there the whole time. If someone doesn’t understand GB-hours, just say they’ll be billed for average usage - with hourly or even daily quota calculations, the difference is negligible.

I completely understand that the current billing model makes it easier for DH to predict storage needs, but I have a problem with it for two reasons: 1) It’s very different from what your biggest competitor does, even though you compare yourselves with them as though it’s apples-to-apples; and 2) I liked you guys back when I was on shared hosting here, and would love to become a customer again, but for my current backup workload, I’d be charged quite a lot for the brief period where two backup archives exist on rotation; compared to RRS + Glacier, the promo rate is comparable, but your standard rate doesn’t even compete.

How can you afford to not charge for gets and puts? I don’t understand that concept? Seems like overselling? Am I missing something?

It’s not overselling, it’s because we’re using open source software, namely Ceph. It allows us to use commodity server hardware instead of a specialized storage device to help keep our costs low.

ok i’m using it now, so far so good. Only wish ceph supported bucket policies.

Policy and lifecycle are two features I’d really like to see. The Ceph gateway authors are aware of our requests but it’s a wishlist item for now. Ceph does support very rudimentary bucket policies, IIRC only ACLs for other Ceph (i.e. DreamObjects) users. You’ll find more documentation on supported features on our site http://docs.dreamobjects.net and on the Ceph site http://ceph.com/docs/master/radosgw/s3/