S3の詳細な価格情報は、こちらから入手できます。利用可能なAPI関数の詳細はこちらです。
S3の場合、ほとんどの場合、アップロード帯域幅(S3に送信されるバイト)、ダウンロード帯域幅(S3から受信されるバイト)、およびストレージ(S3のバイト)に対して課金されます。API呼び出しの数と種類についても課金されます。
したがって、10GBのデータを10,000個の1MBファイルでS3にアップロードし、1か月間保存してから、各ファイルを1回ダウンロードすると、次の料金が発生します。
- アップロード帯域幅は$0.00(これは無料です)
- ファイルをアップロードする10,000のPUTリクエストに対して$0.10
- 10GBを1か月間保管する場合は0.95ドル
- 10GBのダウンロード帯域幅で$1.08(最初は無料、次に$ 0.12 / GB)
- ファイルをダウンロードするための10,000回のGETリクエストに対して0.01ドル
それは2.14ドルです。アップロードとダウンロードを1回ずつ行い、データを1年間保持した場合、ストレージコストのみが最大12 * $ 0.95、つまり$11.40になります。ファイルの平均が100KBしかない場合、ファイルが100,000ある場合、PUTおよびGETリクエストの10倍、つまり$0.11ではなく$1.10を支払うことになります。
アップロードおよびダウンロードできるファイルは、操作ごとに1つだけです。Zipを使用してファイルを1つに結合した場合、節約できる操作は少なくて済みます。これは、ご覧のとおり、最初はかなり安価です。
ただし、ここには1つの癖があります。データを含む本文だけでなく、リクエストヘッダーを含め、アップロードおよびダウンロード時にすべての帯域幅の使用に対して課金されると確信しています。したがって、ファイルが本当に小さい場合、リクエストヘッダーは、おそらくファイル自体と同じくらい重要になる可能性があります。その場合、帯域幅のコストは2倍になります。
氷河の価格設定はもっと複雑で、私はそれを自分で使ったことがありません。基本的に、ストレージコストをほぼ10分の1に削減し、他のコストは同じままにし、オブジェクトごとのアーカイブと復元にコストを追加します。小さなオブジェクトがたくさんある場合、一度に多くのファイルを取得する必要がある場合、またはファイルを頻繁に取得する必要がある場合、これらのコストは重要であるように思われます。Glacierは、大量のデータ(ギガバイトだけでなく、テラバイト以上)があり、操作が少ない場合に最適のようです。データが10GBしかないことを考えると、S3は非常に安価であるため、Glacierを検討する価値はないようです。
最後に、AWSには最初の1年間は無料の使用階層があり、ストレージ料金の半分を除くすべてのコストをカバーできるようです。