はじめに
AWS Whats'newのうち、サーバレスに関するものは極力追いかけたいと思います!
今回はこの記事を紹介します。
DynamoDBが、PITRをサポートしたという内容です。
全てのリージョンですでに利用可能とのことです。
試してみた!
PITR有効化
マネコン上でみてみると、バックアップのタブのところに項目がありました。
期間は1〜35日で設定可能です。
料金のところでも書いてますが、ここで対象とする期間によって課金対象額が変わるのかな?
データ書き込みしてみる。
まずは、8項目データがある状況から2件ほどデータを追記します。
aws dynamodb put-item \
--table-name stream_test \
--item '{"id":{"S":"100"},"name":{"S":"PITR TEST1"}}'
aws dynamodb put-item \
--table-name stream_test \
--item '{"id":{"S":"101"},"name":{"S":"PITR TEST2"}}'
これで10件になりました。
戻してみる。
またバックアップタブのところから、復元
を選択してみます。
Auroraのバックトラックのような使い方ができるかな?と思ってましたが、復元先は別テーブルみたいです。
復旧時点が、最遅または指定のタイミングで戻せます。
日時指定の場合は、指定可能な最も最古な時間ピッタリだとエラーが出ます。
復旧開始後は以下のような感じで、5分程度待たされます。
小さなテーブルですが、結構時間かかるなぁといった感覚です。
復旧後のテーブル見てみると、戻ってました。
なお、復元されたテーブルには元のテーブルの指定してあったSteamの設定は引き継がれていません。
料金
料金はUSD 0.228/GB-月です。
DynamoDB の PITR に対して発生する料金は、PITR が有効になっている各 DynamoDB テーブル (テーブルデータおよびローカルセカンダリインデックス) のサイズに基づいて決まります。DynamoDB では、PITR が有効なテーブルのサイズが毎月継続的にモニタリングされ、バックアップ料金が決定されます。課金は、各テーブルの PITR が無効になるまで続きます。
この説明だと、PITRが有効になっているテーブルそのものが課金対象のような感じがしますので、PITRの対象期間(1〜35日)は課金には影響しないのでしょうか?
まとめ
誤ったデータを書き換えちゃった!みたいなケースで使えそうですかね。