Cookie の設定を選択する

当社は、当社のサイトおよびサービスを提供するために必要な必須 Cookie および類似のツールを使用しています。当社は、パフォーマンス Cookie を使用して匿名の統計情報を収集することで、お客様が当社のサイトをどのように利用しているかを把握し、改善に役立てています。必須 Cookie は無効化できませんが、[カスタマイズ] または [拒否] をクリックしてパフォーマンス Cookie を拒否することはできます。

お客様が同意した場合、AWS および承認された第三者は、Cookie を使用して便利なサイト機能を提供したり、お客様の選択を記憶したり、関連する広告を含む関連コンテンツを表示したりします。すべての必須ではない Cookie を受け入れるか拒否するには、[受け入れる] または [拒否] をクリックしてください。より詳細な選択を行うには、[カスタマイズ] をクリックしてください。

効率的な一括オペレーション

フォーカスモード
効率的な一括オペレーション - Amazon DynamoDB
このパターンを使用すべきケース

これらのパターンは、DynamoDB 項目の一括更新を効率的に実行するうえで役立ちます。

  • DynamoDB シェルは、本番稼働のユースケースではサポートされていません。

  • TransactWriteItems – 条件付きまたは条件なしの最大 100 の個別の更新。all-or-nothing の ACID バンドルとして実行されます。

    トレードオフ — 追加のスループットが使用され、1 KB の書き込みあたり 2 WCU が使用されます。

  • PartiQL BatchExecuteStatement – 条件付きまたは条件なしで、最大 25 件の更新。

    トレードオフ – リクエストを 25 のバッチで分散するために、追加のロジックが必要です。

  • AWS Step Functions – AWS Lambda に精通しているデベロッパー向けのレート制限付き一括オペレーション。

    トレードオフ — 実行時間はレート制限に反比例します。Lambda 関数の最長タイムアウトによって制限されます。この機能では、読み取りと書き込みの間に発生するデータ変更が上書きされる可能性があります。詳細については、「Backfilling an Amazon DynamoDB Time to Live attribute using Amazon EMR: Part 2」を参照してください。

  • AWS Glue および Amazon EMR – マネージド並列処理によるレート制限付き一括オペレーション。時間的制約のないアプリケーションや更新の場合、これらのオプションはスループットのごく一部しか使用せずにバックグラウンドで実行できます。どちらのサービスも、emr-dynamodb-connector を使用して DynamoDB オペレーションを実行します。これらのサービスは、大規模な読み取りを実行した後、レート制限のオプションを使用して更新済みの項目を大量に書き込みます。

    トレードオフ — 実行時間はレート制限に反比例します。この機能では、読み取りと書き込みの間に発生するデータ変更が上書きされる可能性があります。グローバルセカンダリインデックス (GSI) からの読み取りはできません。詳細については、「Backfilling an Amazon DynamoDB Time to Live attribute using Amazon EMR: Part 2」を参照してください。

  • DynamoDB シェル – SQL のようなクエリを使用したレート制限付き一括オペレーション。効率を向上させるために GSI から読み取ることができます。

    トレードオフ — 実行時間はレート制限に反比例します。「Rate limited bulk operations in DynamoDB Shell」を参照してください。

パターンの使用

オンデマンドスループットモードを使用する場合、特に一括更新については、コストに多大な影響が及ぶ可能性があります。プロビジョンドスループットモードを使用する場合、速度とコストの間にトレードオフが発生します。レート制限パラメータを厳密に設定すると、処理時間が非常に長くなる可能性があります。平均項目サイズとレート制限を使用すると、更新の速度を大まかに判断できます。

別の方法として、更新プロセスの予想期間と平均項目サイズに基づいて、プロセスに必要なスループットの量を決定することもできます。各パターンで共有されているブログのリファレンスには、パターン使用の戦略、実装、制限に関する詳細が記載されています。詳細については、「Cost-effective bulk processing with Amazon DynamoDB」を参照してください。

ライブ DynamoDB テーブルに対して一括更新を実行するには、複数の方法があります。適切なアプローチは、ACID やべき等性の要件、更新する項目数、API の知識などの要因によって異なります。コストと時間の間のトレードオフを考慮することが重要となります。上記のほとんどのアプローチでは、一括更新ジョブで使用されるスループットをレート制限するオプションが提供されています。

このページの内容

プライバシーサイト規約Cookie の設定
© 2025, Amazon Web Services, Inc. or its affiliates.All rights reserved.