Amazon Timestreamの利用料金を試算した #reinvent
re:Invent 2018のキーノートにて、時系列データベースであるAmazon Timestreamが発表されました。
このエントリーでは利用費を試算します。
課金対象
Amazon Timestream を利用すると以下の費用が発生します。
- 書き込み
- 読み取り
- ストレージ(ストレージタイプによる)
- 通信費
順に確認します。
利用費はオレゴンリージョンを採用します。
書き込み
テーブルに対する書き込みに対する利用費です。
書き込み単位は 1KB です。 100万の書き込み(=1GB)ごとに $0.50 の費用が発生します。
読み取り
クエリー時のデータスキャンに対する利用費です。
TBごとに $10 の費用が発生します。
ストレージ
データベースのストレージに対する利用費です。
GB-時間ごとに費用が発生します。
RDB と同じく、複数のストレージタイプを選択可能で、ストレージタイプごとに利用費が異なります。
- インメモリ : 0.036/GB-Hour
- SSD : $0.0004167/GB-Hour
- マグネティック : $0.0000411/GB-Hour
高速なデータベースほど利用費は高いです。
実運用時には、データのライフサイクルに合わせて、ストレージを変更することになるでしょう。
データ転送
データ通信費は EC2 や S3 と同じです。
同じリージョンでの AWS サービス間の通信費は無料です。 AWS からインターネットへの通信は利用費が発生します。
データ発生元は関係ないため、価格表も同じです。
1 GB まで/月 | 0.00USD/GB |
---|---|
次の 9.999 TB/月 | 0.09USD/GB |
次の 40 TB/月 | 0.085USD/GB |
次の 100 TB/月 | 0.07USD/GB |
150 TB /月より大きい | 0.05USD/GB |
試算
検算もかねて、pricing ページにある試算を例にとります。
1日で10GBの書き込みが発生するとします。
書き込まれたデータは
- 最初の3時間はインメモリストレージに保存
- 次の3日間はSSDに保存
- 次の1年間はマグネティックに保存
するとします。
毎日10回、1クエリーあたり10GBのデータをスキャンするクエリーを投げるとします。 さらに、毎月100回、1クエリーあたり10GBのデータをスキャンするクエリーを投げるとします。
書き込み利用費
1日で10GBの書き込みが発生するとします。
$0.50/GB * 10 GB/day * 30 day = $150
ストレージ
書き込まれたデータは
- 最初の3時間はインメモリストレージに保存
- 次の3日間はSSDに保存
- 次の1年間はマグネティックに保存
するとします。
1日に10GBの書き込みがあるということは、時間あたり 10GB/24 の書き込みがあります。
メモリストレージについては、インメモリ上に3時間分のデータ(3 * 10GB/24)が存在することになるため、1時間あたりは
$0.036/hour * (3 * 10GB/24)
の利用費が発生します。
1ヶ月あたりは
$0.036/hour * (3 * 10GB/24) * 24 * 30 = $32.4
の利用費が発生します。
同様に、SSDH ストレージについても、1ヶ月あたり
$0.0004167/hour * (3 * 10GB) * 24 * 30 = $9
の利用費が発生します。
同様に、マグネティックストレージにいても、1ヶ月あたり
$0.0000411/hour * (365 * 10GB) * 24 * 30 = $108
の利用費が発生します。
スキャン
毎日10回、1クエリーあたり10GBのデータをスキャンするクエリーを投げるとします。 さらに、毎月100回、1クエリーあたり10GBのデータをスキャンするクエリーを投げるとします。
1ヶ月あたりのスキャン量は
10GB/Query * 10 Query/day * 30 day + 10GB/Query * 100 Query/day = 4000GB=4TB
です。
1ヶ月あたり
$10/TB * 4TB = $40
の利用費が発生します。
最後に
Timesteam を利用する上ではストレージの選択とデータライフサイクル管理が重要です。
高価なインメモリーには、鮮度が高く、価値の高い少量のデータを保存し、安価なマグネティックには、鮮度が低い大量のデータを保存。
あとはビジネス要件に応じて、各ストレージのライフサイクルを設定しましょう。
参考
- https://aws.amazon.com/timestream/pricing/