DynamoDB のバックアップと復旧
DynamoDB には、DynamoDB のテーブルデータをほぼ継続的にバックアップする PITR が用意されています。有効にすると、明示的にオフにするまで、DynamoDB は過去 35 日間のテーブルの増分バックアップを維持します。
また、DynamoDB コンソール、AWS CLI、または DynamoDB API を使用して、DynamoDB テーブルのオンデマンドバックアップを作成することもできます。詳細については、「DynamoDB テーブルをバックアップする」を参照してください。AWS Backup を使用して、定期的な、または今後のバックアップをスケジュールできます。または Lambda 関数を使用して、バックアップ方法をカスタマイズおよび自動化できます。DynamoDB のバックアップに Lambda 関数を使う方法については、ブログ記事 「Amazon DynamoDB のオンデマンドバックアップをスケジュールするサーバーレスソリューション」
リストアした DynamoDB テーブルに対して、手動で以下の設定を行う必要があります:
-
自動スケーリングポリシー
-
IAM ポリシー
-
Amazon CloudWatch メトリクスおよびアラーム
-
タグ
-
ストリーム設定
-
TTL 設定
バックアップから新しいテーブルにリストアできるのは、テーブルデータ全体のみです。復元されたテーブルに書き込むことができるのは、アクティブになってからです。
復元プロセスでは、新しく復元されたテーブル名を使用するようにクライアントにどのように指示するかを考慮する必要があります。設定ファイル、AWS Systems Manager パラメータストア値、またはクライアントが使用するテーブル名を反映するように動的に更新できる別の参照から DynamoDB テーブル名を取得するようにアプリケーションとクライアントを設定できます。
復元プロセスの一環として、切り替えプロセスを慎重に検討する必要があります。IAM 権限を使用して既存の DynamoDB テーブルへのアクセスを拒否し、新しいテーブルへのアクセスを許可することもできます。その後、新しいテーブルを使用するようにアプリケーションとクライアントの設定を更新できます。また、既存の DynamoDB テーブルと新しく復元した DynamoDB テーブルとの違いを調整する必要がある場合もあります。