mirror of
https://github.com/danbulant/design
synced 2026-06-17 05:11:13 +00:00
progress on post
This commit is contained in:
parent
de7359a26b
commit
a46095b710
1 changed files with 108 additions and 10 deletions
|
|
@ -1,34 +1,132 @@
|
|||
---
|
||||
title: Quick comparison of Simple Storage Service
|
||||
title: Quick comparison of pricing of Simple Storage Services
|
||||
date: 2022-04-26
|
||||
author: Daniel Bulant
|
||||
authorIcon: /logo.png
|
||||
categories: [programming, storage, comparison, s3]
|
||||
description: There are all those ad-filled long articles comparing certain things (in this case, simple storage services), usually auto generated. So here's a note for my future self in a format I like now.
|
||||
description: There are all those ad-filled long articles comparing certain things (in this case, simple storage services, or S3), usually auto generated. So here's a note for my future self in a format I like now.
|
||||
---
|
||||
|
||||
I'm not sponsored or endorsed by any of the mentioned companies/products below, nor do I earn any commission when you get something from them.
|
||||
If you want to help me, say something nice in the comments (or create some discussion there).
|
||||
If you start using any of these after you read this post, you're obligated to say which one are you using (and preferably why).
|
||||
|
||||
Out of the below, I only used `storj.io`. Others are just quick info based on their pricing pages.
|
||||
|
||||
There's also a simplified comparison tool at the bottom.
|
||||
|
||||
`egress` means outbound transfers.
|
||||
|
||||
The services are in no particular order (I tried a bit by popularity, but no exact metrics were used for sorting).
|
||||
|
||||
## AWS S3 + Azure + Google Cloud
|
||||
|
||||
Depends on region and on API requests.
|
||||
Top 3 most expensive services.
|
||||
If you need 100% reliability and 'the thing that everyone uses', go with this one (or if it's company policy).
|
||||
If you want to save, or don't mind using 'smaller' hosts, try one of the below (I'd recommend Cloudflare or DigitalOcean from reliability/usage perspective).
|
||||
|
||||
## Cloudflare R2
|
||||
|
||||
I'm using their other products (workers, this page itself is hosted on pages), but I have yet to fully try the new R2.
|
||||
|
||||
| Category | Free | Paid |
|
||||
| -------- | ---- | ---- |
|
||||
| Storage | 10GB/month | $15/TB/month |
|
||||
| class A ops | 1 million requests/month | $4.5/ million requests |
|
||||
| class B ops | 10 million requests/month | $0.36/ million requests |
|
||||
|
||||
Class A has all uploads and bulk operations (`ListBuckets`, `PutBucket`, `ListObjects`, `PutObject`, `CopyObject`, `CompleteMultipartUpload`, `CreateMultipartUpload`, `UploadPart`, `UploadPartCopy`).
|
||||
Class B contains get operations (`HeadBucket`, `HeadObject`, `GetObject`).
|
||||
Delete operations are free (`DeleteObject`, `DeleteBucket`, `DeleteMultipartUpload`).
|
||||
|
||||
[Home page of Cloudflare](https://cloudflare.com) | [Pricing for R2](https://developers.cloudflare.com/r2/platform/pricing/)
|
||||
|
||||
## Wasabi
|
||||
|
||||
***6$/TB/month***
|
||||
***$5.99/TB/month***
|
||||
|
||||
No API charge/egress.
|
||||
|
||||
## DigitalOcean
|
||||
[Home page](https://wasabi.com) | [Pricing page](https://wasabi.com/cloud-storage-pricing/)
|
||||
|
||||
***20$/TB/month***
|
||||
## Backblaze B2
|
||||
|
||||
4TB outbound transfer included.
|
||||
| Category | Free | Paid |
|
||||
| -------- | ---- | ---- |
|
||||
| Storage | 10GB | $5/TB/month |
|
||||
| Egress | 1GB/day | $10/TB/month |
|
||||
| Class A ops | $\infty$ | - |
|
||||
| Class B ops | 2500/day | $4 / 10 million |
|
||||
| Class C ops | 2500/day | $4 / 1 million |
|
||||
|
||||
Likely 0 API charge.
|
||||
Free egress when using one of the '[Bandwidth alliance](https://www.cloudflare.com/bandwidth-alliance/)' services - for example when using free Cloudflare proxy (which is free even for small businesses, unless you're moving tens/hundreds of terabytes of data each day).
|
||||
|
||||
<details>
|
||||
<summary>Details</summary>
|
||||
|
||||
### Class A
|
||||
|
||||
Uploads, deletes (of objects and buckets), aborts (of multipart uploads).
|
||||
|
||||
### Class B
|
||||
|
||||
Downloads (and getting metadata of objects). This doesn't count as egress, so it's still paid even when over 'Bandwidth alliance'.
|
||||
|
||||
### Class C
|
||||
|
||||
Copy, Create bucket, CORS bucket management, bucket information, listing.
|
||||
</details>
|
||||
|
||||
[Home page](https://backblaze.com) | [Pricing page](https://www.backblaze.com/b2/cloud-storage-pricing.html)
|
||||
|
||||
## DigitalOcean Spaces
|
||||
|
||||
| Category | Base | Paid |
|
||||
| ----- | --- | --- |
|
||||
| Storage | 250GB | $20/TB/month |
|
||||
| Egress | 1TB | 10$/TB/month |
|
||||
|
||||
Base plan is 5$/month.
|
||||
|
||||
<details>
|
||||
<summary>Details</summary>
|
||||
Egress is kinda funky, but essentially it's free when transfering to droplets (VMs) in the same region, otherwise it's paid.
|
||||
|
||||
Digital Ocean also has some kind of CDN for free bundled, and when using CDN only egress from Spaces to CDN is counted.
|
||||
|
||||
To find pricing for Spaces, I had to open up `pricing` page from their homepage, scroll down, click `spaces` card, click `learn more` link in the description, scroll down, click `product docs`, and then it showed the pricing itself.
|
||||
|
||||
They have rate limits for API requests in place (see [Pricing page](https://docs.digitalocean.com/products/spaces)). Of those the most notable one
|
||||
is that you can only do 5 `PUT` or `COPY` requests in 5 minutse for any object (file) in Spaces.
|
||||
As a side note, they use non-standard `503 Slow Down` (normally `Service Unavailable`) error code instead of the more common `429 Too Many Requests` (part of RFC 6585).
|
||||
</details>
|
||||
|
||||
[Home page](https://digitalocean.com) | [Pricing page](https://docs.digitalocean.com/products/spaces)
|
||||
|
||||
## Storj.io
|
||||
|
||||
***4$/TB/month***
|
||||
|
||||
| Category | Free | Paid |
|
||||
| -------- | ---- | ---- |
|
||||
| Storage | 150GB | $4/TB/month |
|
||||
| Outbound | 150GB | 7$/TB/month |
|
||||
|
||||
> *Pro Accounts: Additional per-segment fee of $0.0000088 applies.
|
||||
|
||||
Not 100% sure what they mean per segment?
|
||||
|
||||
7$/TB/month outbound.
|
||||
<details>
|
||||
<summary>Details</summary>
|
||||
|
||||
Really slow uploads, downloads usable, but I'd still recommend putting it behind Cloudflare or similar proxy if you're storing mostly small user uploads.
|
||||
When uploading via CLI/libraries, their software splits the files into segments, each of which is stored on multiple machines at once for redundancy. S3 gateway does that for you, and I don't know how exactly the file is split into segments. Segment price is not part of the comparison at the end.
|
||||
|
||||
Really slow uploads (when using the S3 gateway, it's possible if you use the CLI/libraries that it's faster), downloads usable, but I'd still recommend putting it behind Cloudflare or similar proxy if you're storing mostly small user uploads.
|
||||
It should be more secure that the others, in that if you don't use the S3 gateway but rather their open-source CLI/libraries, it encrypts the file locally with the specified key, and uploads a part of the file to multiple machines, so none of the machines can read your file.
|
||||
Also, they're not the one's running all of the machines on which files are stored - they pay members for their excess storage if they install Storj's daemon.
|
||||
S3 gateway has server-side encryption.
|
||||
|
||||
They cannot retrieve the files if you lose the keys.
|
||||
</details>
|
||||
|
||||
[Home page](https://storj.io) | [Pricing page](https://www.storj.io/pricing)
|
||||
|
|
|
|||
Loading…
Reference in a new issue