Amazon DynamoDB テーブルの復元に長い時間がかかるのはなぜですか?

所要時間1分
0

Amazon DynamoDB テーブルを復元しようとしていますが、復元プロセスに長い時間がかかっています。

解決方法

バックアップから DynamoDB テーブルを復元する際、復元プロセスは、ほとんどの場合、1 時間未満で完了します。ただし、復元に要する時間は、テーブルのサイズ、基盤となるパーティションの数、その他の関連する変数など、テーブルの構成に応じて異なります。ディザスタディスカバリを計画する場合、復元が完了するまでの平均時間を定期的に文書化し、この時間が全体的な目標復旧時間にどのように影響するかを確認することがベストプラクティスです。

DynamoDB がテーブルの復元に要する時間は複数の要因によって異なり、必ずしもテーブルのサイズと直接相関しているわけではありません。著しいスキューがあるデータ、およびセカンダリインデックスがテーブルに含まれている場合、復元に要する時間が長くなることがあります。復元プロセスが進行中の場合、テーブルのステータスは [Restoring] (復元中) になります。復元が完了すると、テーブルのステータスは [Active] (アクティブ) と表示されます。DynamoDB のすべてのバックアップは、テーブルでプロビジョニングされたスループットを消費することなく機能します。

バックアップから DynamoDB テーブルを復元するときは、次の点に注意してください。

  • 復元に要する時間は、必ずしもテーブルのサイズに直接関連しているわけではありません。
  • DynamoDB テーブルのポイントインタイムリカバリを実行する場合、テーブルのサイズに関係なく、復元プロセスには少なくとも 20 分かかります。これは、復元後、DynamoDB がすべてのリソースをプロビジョニングして新しいテーブルを作成し、復元プロセスを開始して実際のデータをコピーする時間が必要になるためです。
  • テーブル内のデータが均等に分散されている場合、復元時間は、アイテム数別に最大の単一パーティションに比例します。
  • データスキューがある場合、潜在的なホットキースロットリングが原因で復元時間が長くなる可能性があります。例えば、テーブルのプライマリキーが 1 年のうちの 1 か月をパーティショニングに使い、すべてのデータが 12 月からのものだった場合、スキューされたデータがあります。
  • セカンダリインデックスを作成対象から除外すると、テーブルの復元が高速になり、コスト効率が高くなります。
  • スキーマとデータが異なる 2 つの異なるテーブルの復元時間を比較することはできません。これは、テーブルの復元時間がパーティションレベルでのデータのスキューに応じて異なるためです。

関連情報

DynamoDB バックアップと復元の使用

AWS公式
AWS公式更新しました 2年前
コメントはありません