Impor DynamoDB S3 gagal — format tidak valid

TL;DR — ImportTable selesai dengan status FAILED, FailureCode: ItemValidationError, dan pesan "Beberapa item gagal dalam pemeriksaan validasi dan tidak diimpor." Objek sumber tidak cocok dengan InputFormat/InputCompressionType yang Anda nyatakan, atau item kehilangan kunci utama. Perbaiki format/compression agar cocok dengan objek, konfirmasikan setiap item membawa kunci, dan jalankan kembali impor.

Apa artinya

"FailureCode": "ItemValidationError",
"FailureMessage": "Some of the items failed validation checks and were not
imported. Please check CloudWatch error logs for more details."

# In /aws-dynamodb/imports CloudWatch logs:
ValidationException: One or more parameter values were invalid: Missing the key pk in the item

Mengapa itu terjadi

  • Format mismatch — Anda menentukan DYNAMODB_JSON tetapi objeknya sebenarnya CSV (atau JSON biasa), jadi tidak ada yang diurai.
  • Ketidakcocokan kompresi — objek di bawah awalan dikompresi secara berbeda (sebagian GZIP, sebagian NONE); mereka semua harus menggunakan yang sama.
  • Kompresi tidak didukung — hanya GZIP, ZSTD, atau NONE yang diperbolehkan; codec lain gagal.
  • Kunci utama tidak ada — item CSV/JSON tidak memiliki kolom/attribute yang cocok dengan kunci partisi (atau pengurutan) yang dinyatakan: "Kunci pk dalam item tidak ada."
  • Jenis kunci tidak cocok — jenis kunci yang diimpor tidak cocok dengan AttributeDefinitions tabel (misalnya kunci numerik yang diimpor sebagai string).
  • Objek yang tidak dapat diurai di bawah awalan — setiap objek yang cocok dengan awalan dibaca sebagai data, sehingga placeholder yang tersesat atau format file yang salah gagal dalam validasi.

Bagaimana cara memperbaikinya

  1. Jadikan InputFormat cocok dengan byte sebenarnya — file CSV → CSV, DynamoDB JSON → DYNAMODB_JSON, Amazon Ion → ION.
  2. Buat setiap objek di bawah awalan menggunakan kompresi yang sama, dan atur InputCompressionType agar cocok (GZIP/ZSTD/NONE).
  3. Pastikan setiap item memiliki kunci utama — untuk CSV, sertakan kolom kunci (dan header) dengan nama yang cocok dengan KeySchema yang dideklarasikan.
  4. Cocokkan jenis atribut kunci dengan AttributeDefinitions tabel (S/N/B).
  5. Baca log kesalahan CloudWatch di /aws-dynamodb/imports, log streaming <import-id>/error, untuk alasan per item yang tepat.
  6. Simpan hanya objek data yang dapat diurai di bawah awalan; mengunggah data melalui CLI/SDK daripada membuat folder di konsol.

Workbench DynoTable

Validasi file impor sebelum diunggah — ekspor item sampel dari DynoTable sebagai DynamoDB JSON (⌘K → salin item) dan konfirmasikan atribut utama di konverter JSON. Periksa ukuran item dengan kalkulator ukuran item ketika objek besar menyebabkan kegagalan penguraian.

Konfigurasikan profil akun S3 di bawah Pengaturan → Profil dengan Uji Koneksi; beralih dengan ⌘P. 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.