Impor
DynoTable mengimpor file CSV, JSON, dan NDJSON ke tabel yang sudah ada — separuh lainnya dari Ekspor. Seluruh file diperiksa sebelum satu baris pun ditulis, jadi file yang bermasalah gagal disertai nomor baris, bukan meninggalkan data Anda separuh terimpor.
Buka dengan tombol Import di toolbar tabel. Import menulis ke tabel, jadi ia butuh lisensi Trialing atau Active.

Import memuat data ke tabel yang sudah ada — ia tidak pernah membuat tabel baru. Buat dulu tabelnya (beserta kunci utama-nya), baru impor ke sana.
Dua tingkat fidelitas
Exact — JSON / NDJSON yang ditulis dalam bentuk wire
(DynamoDB-JSON). Tidak ada yang ditebak: setiap nilai
sudah membawa tipenya sendiri, sehingga ekspor yang diambil dalam format ini
diimpor kembali tanpa berubah. Ini format yang dipakai saat datanya penting.
Convenience — CSV dan JSON polos (unmarshalled). Keduanya tidak membawa
informasi tipe, jadi DynoTable menduga tipe per kolom dan menunjukkan apa yang
dipilihnya sebelum Anda commit. Praktis, dan lossy dengan cara yang
terdokumentasi — lihat
Di mana file convenience kehilangan informasi.
Kolom dan tipe
Header file menjadi nama atribut. Pratinjau mendaftar setiap kolom beserta tipe yang diduga DynoTable. Klik kanan sebuah header kolom untuk rename jika headernya tidak cocok dengan nama atribut Anda, atau untuk mengubah Data type-nya saat yang diduga bukan yang Anda inginkan — misalnya kode produk yang hanya terdiri dari digit, yang harus tetap teks alih-alih menjadi angka.
Daftar tipe hanya menawarkan apa yang benar-benar bisa dijadikan nilai kolom itu, jadi kolom teks polos tidak akan menawarkan Map atau List. Jika sebuah kolom hanya punya satu kemungkinan tipe, tidak ada daftar yang muncul. Tidak ada layar pemetaan di luar ini.
File Anda harus menyediakan kunci utama lengkap tabelnya. Baris yang kehilangan atribut kunci, atau membawa tipe yang salah untuknya, ditolak dengan menyebutkan namanya.
Tidak ada yang ditulis sampai seluruh file lolos
Import membaca file dua kali. Pass pertama memvalidasi setiap baris dan tidak menulis apa pun; hanya jika file lolos, pass kedua menulis.
- Masalah dilaporkan dengan nomor baris (atau posisi item, untuk array JSON), hingga 20 sekaligus.
- Dua baris dengan key yang sama dalam satu file ditolak, dan Anda ditunjukkan kedua posisinya — DynamoDB akan diam-diam hanya menyimpan yang terakhir.
- Perbaiki filenya dan tekan Import lagi; dialog tetap berada di file yang Anda pilih.
Import menggantikan item yang cocok
Baris yang diimpor menggantikan item yang ada dengan kunci utama yang sama, atribut demi atribut — ia tidak digabung ke dalamnya. Atribut yang dimiliki item lama dan tidak ada di file akan hilang.
Import juga tidak melalui staging, jadi tidak ada langkah tinjauan dan tidak ada revert. Berbeda dari suntingan yang di-stage, sebuah import tidak bisa diurungkan dari riwayat aplikasi. Untuk data yang penting bagi Anda, impor dulu ke salinan tabel dan periksa hasilnya.
Batasan
| Batasan | Nilai |
|---|---|
| Ukuran file CSV / NDJSON | 250 MB |
Satu array .json | 50 MB — pakai NDJSON di atas itu |
| Baris per import | 2.000.000 |
| Satu item | 400 KB (batas atas DynamoDB sendiri) |
File .json menyimpan satu array besar yang harus diparsing utuh, itu sebabnya
batasnya lebih rendah. NDJSON — satu item per baris — di-stream sebagai
gantinya, jadi ia memakai penuh 250 MB.
Di mana file convenience kehilangan informasi
Ini berlaku untuk CSV dan JSON polos saja. Format DynamoDB-JSON yang marshalled tidak mengalami satu pun dari ini.
- Tipe diduga dari sampel sekitar 200 baris pertama. Kolom yang di sana terlihat numerik tapi kemudian menjadi non-numerik lebih jauh di dalam file ditolak saat validasi — perbaikannya adalah membetulkan filenya.
- Set dan binary tidak bisa diekspresikan dalam CSV, jadi keduanya tidak bisa diimpor darinya.
- Sel kosong dilewati, bukan ditulis sebagai string kosong. Sebuah item cukup tidak memiliki atribut itu.
- Map dan list selamat dalam perjalanan. Export menulisnya ke dalam sel CSV sebagai teks JSON, dan import mengenali teks itu lalu membangun ulang strukturnya. Jika sebuah kolom memang benar-benar teks yang kebetulan terlihat seperti JSON, pratinjau menunjukkan apa yang terjadi dan Anda bisa mengatur Data type kolom itu kembali ke String.
- Angka yang sangat besar dalam JSON polos kehilangan presisi sebelum DynoTable sempat melihatnya — itu keterbatasan JSON sendiri. Pakai DynamoDB-JSON untuk ID dan jumlah yang harus tetap tepat.
- Tanda keamanan spreadsheet ditangani saat kembali masuk. Export
membubuhkan apostrof di depan sel yang akan dianggap spreadsheet sebagai
formula. Saat import,
'-5menjadi angka-5dan'+7kembali sebagai teks+7— tapi formula sungguhan seperti'=SUM(A1)mempertahankan apostrofnya, secara permanen. Menghapusnya akan mempersenjatai kembali hal yang tanda itu ada untuk dijinakkan.
Progres, pembatalan, dan kegagalan
Import yang sedang berjalan muncul di dock Aktivitas di bagian bawah sidebar dengan progres langsung, dan terus berjalan sementara Anda bekerja di tab lain. Anda bisa Stop-kan dari sana; baris yang sudah tertulis tetap tertulis.
Jika DynamoDB men-throttle tabel cukup keras sehingga sebagian baris tidak bisa ditulis meski sudah dicoba ulang, import selesai dan memberi tahu berapa banyak baris yang tidak bisa ditulis. Menjalankan ulang file yang sama aman — baris yang berhasil masuk cukup ditulis ulang dengan nilai yang sama.
Entri import tetap ada di dock sampai Anda menutupnya: sebuah import tidak menghasilkan file untuk ditunjuk, jadi baris itu adalah satu-satunya catatan bahwa proses telah selesai.


