
AWSのKinesis Data Streamsはデフォルトで24時間データを保存してくれます。
24時間までは無料で、24時間を超えると有料となり、最大7日間(168時間)まで延長可能です。
延長した時の料金が分かり辛かったので整理しました。
Kinesisデータ保存期間延長の料金
延長した時の料金は公式ページによると以下の記載となっています。
(東京リージョンの場合)
拡張データ保持期限 (最大7日間)、シャード時間ごと → $0.0260
https://aws.amazon.com/jp/kinesis/pricing/
延長した期間(時間)に応じて料金が変わると思っていましたが、実際はKinesisのシャード時間によって決まります。
(念のためサポートにも確認しました)
延長期間の長さは関係なく、Kinesisのシャード数と稼働時間で決まるという事ですね。→ 延長期間が2日でも7日でも料金は変わらない
まぁ、公式ページに「シャード時間ごと」とちゃんと書いている訳ですが、私の理解が追いついていなかったようです。
シャード時間とは?
シャード時間は、Kiensisのストリームに対する「シャード数 × 稼働時間」になります。
例えば、シャード数が2本で1ヶ月(31日)稼働させた場合のシャード時間は次の値になります。
2本 × 24h × 31d = 1488h
1ヶ月の料金は?
先程のシャード時間に単価を掛けるだけなので、1ヶ月の延長料金は以下になります。
2 × 24 × 31 × 0.026 = $38.688
1ドル115円と仮定した場合、約4,450円/月ぐらいですね。
基本的にKinesisは一度作ったら、ずっと稼働させたままになると思うので、シャード数の影響がかなり大きくなりそうです。
障害発生時の保険として保持期間を延長するのであれば、最大の7日にしておけば良さそうですね。
例えば、週末に障害が発生した時に、土日は対応できる人がいなくて月曜日までデータを確保おきたい場合とかですね。
最近、AWS関連の仕事が非常に多く、学ぶことが沢山あって楽しいです^^