Ukuran gabungan semua kunci rentang telah melampaui batas ukuran 1024 byte

TL;DR — DynamoDB membatasi nilai kunci pengurutan (rentang) hingga 1024 byte dan nilai kunci partisi (hash) hingga 2048 byte (diukur dengan enkode UTF-8). Nilai kunci pengurutan Anda melampaui 1024 byte — biasanya merupakan kunci komposit yang terlalu banyak. Persingkat, hash bagian yang panjang, atau pindahkan sebagian besar ke atribut non-kunci.

Apa artinya

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

Mengapa itu terjadi

  • Kunci pengurutan komposit yang terlalu panjang — menggabungkan banyak segmen (ORG#…#PROJECT#…#DOC#…#veryLongTitle…) hingga nilainya melebihi 1024 byte.
  • Mengkodekan nilai besar ke dalam kunci — memasukkan URL lengkap, jalur, deskripsi, atau gumpalan serial ke dalam kunci pengurutan.
  • Karakter multibyte — teks non-ASCII masing-masing berharga 2–4 byte di UTF-8, sehingga string yang "terlihat pendek" bisa melebihi batas byte.
  • Kunci partisi terlalu besar — kelas kesalahan yang sama terhadap batas kunci hash 2048 byte.

Bagaimana cara memperbaikinya

  1. Pangkas kunci komposit menjadi hanya segmen yang sebenarnya Anda kueri; jatuhkan pengisi yang bisa dibaca manusia.
  2. Hash bagian yang panjang — menyimpan intisari deterministik pendek (misalnya SHA-256 yang terpotong) dalam kunci dan mempertahankan nilai penuh sebagai atribut normal.
  3. Memindahkan sebagian besar kunci — kunci pengurutan harus mengidentifikasi /order item, bukan membawa muatannya; letakkan teks panjang dalam atribut non-kunci (yang memiliki anggaran item 400 KB).
  4. Ukur dalam byte, bukan karakter — pengkodean dan penghitungan UTF-8, terutama untuk data non-ASCII.

Lihat di DynoTable

Tempelkan item draf ke dalam kalkulator ukuran item dan periksa jumlah byte atribut utama sebelum Anda menulis. Di DynoTable, buka tabel dengan ⌘K, buat item pengujian dengan staging (⌘S), dan konfirmasikan kecocokan kunci — kunci yang terlalu besar gagal sebelum dilakukan.

Saat mendesain ulang kunci komposit, prototipe membuat kueri di Pembuat Kueri dengan segmen kunci yang lebih pendek. Ganti profil dengan ⌘P; Uji Koneksi pada Pengaturan → Profil. Lihat Menghubungkan ke AWS dan Instal.

Sumber

Kesalahan terkait

Referensi

Terakhir diverifikasi 2026-07-13 berdasarkan dokumentasi resmi AWS yang ditautkan di atas.

Bekerja dengan DynamoDB tanpa Console

Klien desktop DynamoDB yang cepat dan menjalankan SQL sungguhan yang tidak bisa dijalankan DynamoDB — JOINs, GROUP BY, agregasi — dengan editing visual dan agen AI pada kunci Bedrock milik Anda sendiri.

Uji coba gratis 30 hari, tanpa kartu kredit — lalu paket Free tanpa batas waktu.