オンデマンドの Amazon DynamoDB テーブルでスロットリングが発生しています。
オンデマンドキャパシティモードを使用する DynamoDB テーブルは、アプリケーションのトラフィック量に自動的に適応します。ただし、オンデマンドモードを使用するテーブルでは引き続きスロットリングが発生する可能性があります。ユースケースのトラブルシューティングを行うには、以下のスロットリングの一般的な原因を参照してください:
30 分以内に前回のトラフィックのピークの 2 倍を超えると、スロットリングが発生する可能性があります。前回のトラフィックのピークを超える前に、トラフィックの増加を少なくとも 30 分に分散させることがベストプラクティスです。テーブルへのトラフィックをモニタリングするには、Amazon CloudWatch の ConsumedReadCapacityUnits メトリクスを使用します。詳細については、「DynamoDB のメトリクスとディメンション」を参照してください。
新しいオンデマンドテーブルでは、最大 4,000 件の書き込みリクエストユニットまたは 12,000 件の読み取りリクエストユニット、あるいはその両方を直線的に組み合わせてすぐに処理できます。
既存のテーブルをオンデマンドキャパシティモードに切り替えた場合、前回のピークは次のいずれかの値になります:
詳細については、「オンデマンドキャパシティモードの初期スループット」を参照してください。
テーブルの各パーティションは、最大 3,000 の読み取りリクエストユニットまたは 1,000 の書き込みリクエストユニット、または両方を直線的に組み合わせて処理できます。パーティションへのトラフィックがこの制限を超えると、パーティションでスロットリングが発生する可能性があります。このエラーを解決するには、次の操作を行います:
オンデマンドテーブルの場合、テーブルレベルの読み取りスループットとテーブルレベルの書き込みスループットのクォータはアカウントレベルで適用されます。デフォルトでは、テーブルのスループットは最大 40,000 の読み取りリクエストユニットと最大 40,000 の書き込みリクエストユニットです。テーブルへのトラフィックがテーブルごとのアカウントのスループットクォータを超えると、テーブルにスロットリングが発生する可能性があります。この問題を解決するには、Service Quotas コンソールを使用して、アカウントのテーブルレベルの読み取りスループットと書き込みスループットのクォータを増やします。
DynamoDB テーブルにスロットリングされているセカンダリグローバルインデックスがある場合、スロットリングによってベーステーブルにバックプレッシャースロットリングが発生する可能性があります。詳細については、「Amazon DynamoDB テーブルは、グローバルセカンダリインデックスのスロットルからどのような影響を受けますか?」および「DynamoDB でのグローバルセカンダリインデックスの使用」を参照してください。
ピークトラフィックとスケーリングプロパティ
Amazon DynamoDB テーブルに適切なプライマリキーを選択するにはどうすればよいですか?
DynamoDB コンソールのメトリクスが CloudWatch メトリクスと異なるのはなぜですか?
Amazon DynamoDB のサービス、アカウント、テーブルのクォータ