オンラインデータストレージ用途でAWSを活用する

Posted on 2020/09/11

TOC

はじめに

倹約のためにAWSを使ってデータを保存しておくための方法・料金計算をしたのでまとめます。

前提

  • 保存データは写真や映像など
  • アクセス頻度は低い(特に1年以上前のデータであれば月1も見ないはず)
  • 長期保存(10年以上保存)
  • データ喪失は避けたい
  • 一月に20GBアップロード(200リクエスト)
  • 一月に10GBダウンロード(100リクエスト)

AWSのサービス

前提に記載の条件を満たす候補は以下の通りです。

  • S3標準(一般的なやつ)
  • 標準IA(Standard-Infrequent Access)(データ読み取りに対して課金)
  • Glacier(データアクセスに時間がかかる)

計算結果

以下料金表による計算をしています。
https://aws.amazon.com/jp/s3/pricing/

S3標準

ストレージ量は最初の 50 TB/月は0.023USD/GBなので、0.23USD(=25円程度)。
リクエスト量はPUT1000リクエスト辺り0.005USD、GET1000リクエスト辺り0.0004USDのため、0.2×0.005USD+0.2×0.0004USD=0.00108USD(=0.1円程度)。
データ転送量はアップロード無料。ダウンロードは1 GB/月まで0.00USD/GB、次の 9.999 TB/月は0.09USD/GBのため、10*0.09=0.9(=100円程度)。

標準IA

すべてのストレージ/月は0.0125USD/GBなので、0.125USD(=13円程度)。
リクエスト量はPUT1000リクエスト辺り0.01USD、GET1000リクエスト辺り0.001USDのため、0.2×0.01USD+0.2×0.001USD=0.00202USD(=0.2円程度)。
データ転送量はS3標準と同一計算。10*0.09=0.9(=100円程度)。

Glacier

すべてのストレージ/月は0.004USD/GBなので、0.05USD(=5円程度)。
リクエスト量はPUT1000リクエスト辺り0.05USD、GET1000リクエスト辺り0.0004USDのため、0.2×0.05USD+0.2×0.0004USD=0.01008USD(=1円程度)。
データ転送量はS3標準と同一計算。10*0.09=0.9(=100円程度)。

まとめ

まとめるとこんな感じです。

  • S3: 125円/月
  • 標準IA: 113円/月
  • Glacier: 106円/月

ただストレージ量は増えていくので、1年後にはこんな感じになります。 これならまだ払えますけど10年20年と継続するととんでもない額になりますね・・・。

  • S3: 400円/月
  • 標準IA: 260円/月
  • Glacier: 160円/月

今回の使い方だと1年もすれば結構差が出てきますね。 正直もっと安いと思ってたので頻繁にアクセスするデータストレージとして使いたかったのですが厳しそうです。

頻繁にアクセスするデータはローカルに置いておき、紛失時のバックアップ用途として使うならありかもしれません。 データ保存しておくだけであれば1TB保存するのにS3標準で23USD/月と高い。標準IAでは12.5USD/月、Glacierでは4USD/月、まだ高い。
今回計算対象にしていなかったのですが、S3 Glacier Deep Archiveを使えばストレージ/月は0.00099USD/GBなので1USD/月で済む。(10年使っても120ドル)
ただ万が一の際に全量DLするとプラスで1万円かかるけどこれなら現実的な料金。
最初に提示した前提と全然違うオチになりましたが、大切なデータバックアップとして使うならありですかね。