Aggregated size of all range keys has exceeded the size limit of 1024 bytes
TL;DR — DynamoDB は ソート(レンジ)キーの値を 1024 バイト、パーティション(ハッシュ)キーの値を 2048 バイト に制限します(UTF-8 エンコードで測定)。ソートキーの値が 1024 バイトを超えました。通常は詰め込みすぎた複合キーです。短くする、長い部分をハッシュ化する、または大部分を非キー属性に移してください。
意味
ValidationException: One or more parameter values were invalid: Aggregated size of all range keys has exceeded the size limit of 1024 bytes
# on DynamoDB Local you get one combined sentence instead, naming neither key:
ValidationException: Hash primary key values must be under 2048 bytes, and range primary key values must be under 1024 bytesこれは 400 KB のアイテム制限とは別の、厳格な キーサイズ 制限です。ソートキーの値(UTF-8 バイトで測定)は最大 1024 バイト、パーティションキーの値は最大 2048 バイトです。それを超えると、書き込みは HTTP 400 の ValidationException で拒否されます。キーが小さくなるまで リトライ不可 のリクエストエラーです。
発生する理由
- 長すぎる複合ソートキー — 値が 1024 バイトを超えるまで多くのセグメントを連結する(
ORG#…#PROJECT#…#DOC#…#veryLongTitle…)。 - 大きな値をキーにエンコード — 完全な URL、パス、説明、またはシリアライズされた blob をソートキーに入れる。
- マルチバイト文字 — 非 ASCII テキストは UTF-8 で1文字あたり 2〜4 バイトかかるため、「短く見える」文字列がバイト制限を超えることがある。
- パーティションキーが大きすぎる — 2048 バイトのハッシュキー制限に対する同じ種類のエラー。
修正方法
- 複合キーを 実際に照会するセグメントだけに削り、人間が読める埋め草を捨てます。
- 長い部分をハッシュ化します — 短い決定論的なダイジェスト(例: 切り詰めた SHA-256)をキーに格納し、完全な値を通常の属性として保持します。
- 大部分をキーから外します — ソートキーはアイテムを識別/順序付けるべきで、そのペイロードを運ぶべきではありません。長いテキストは(400 KB のアイテム予算を享受する)非キー属性に入れます。
- 文字ではなくバイトで測定します — UTF-8 エンコードして数えます。特に非 ASCII データの場合。
DynoTable で見る
書き込む前に、下書きのアイテムをアイテムサイズ計算ツールに貼り付け、キー属性のバイト数を確認しましょう。DynoTable では ⌘K でテーブルを開き、ステージング(⌘S)でテスト用のアイテムを作れば、キーが収まるかを確認できます — 大きすぎるキーはコミット前に弾かれます。
複合キーを設計し直すときは、短いキーセグメントでクエリビルダーから試作してみましょう。プロファイルの切り替えは ⌘P、Settings → Profiles では Test Connection を実行します。AWS に接続するとインストールを参照してください。
出典
- Supported data types and naming rules (2026-07-13 時点で検証)
- BatchWriteItem — Amazon DynamoDB API Reference (2026-07-13 時点で検証)
関連するエラー
- Item size has exceeded the maximum allowed size (400 KB) — キーだけでなくアイテム全体が大きすぎる。
- The provided key element does not match the schema — キーの型/形状の不一致。
- 学習: DynamoDB のアイテムサイズ上限
参考資料
- Supported data types and naming rules in Amazon DynamoDB — Developer Guide
- BatchWriteItem — Amazon DynamoDB API Reference (key length limits)
- Error handling with DynamoDB — Amazon DynamoDB Developer Guide
最終検証日 2026-07-13、上記にリンクした公式 AWS ドキュメントに照らして確認しました。