Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Koleksi item - cara memodelkan hubungan satu-ke-banyak di DynamoDB
Di DynamoDB, koleksi item adalah sekelompok item yang berbagi nilai kunci partisi yang sama, yang berarti item tersebut terkait. Koleksi item adalah mekanisme utama untuk memodelkan hubungan satu-ke-banyak di DynamoDB. Koleksi item hanya bisa ada pada tabel atau indeks yang dikonfigurasi untuk menggunakan kunci primer komposit.
catatan
Koleksi item bisa ada di tabel dasar atau indeks sekunder. Untuk informasi selengkapnya secara spesifik tentang bagaimana kumpulan item berinteraksi dengan indeks, lihat Kumpulan item dalam Indeks Sekunder Lokal.
Perhatikan tabel berikut yang menunjukkan tiga pengguna berbeda dan inventaris dalam game mereka:
Untuk beberapa item di setiap koleksi, kunci urutan adalah gabungan informasi yang digunakan untuk mengelompokkan data, misalnya inventory::armor, inventory::weapon, atau info. Setiap koleksi item dapat memiliki kombinasi yang berbeda dari atribut ini sebagai kunci urutan. Pengguna account1234 memiliki item inventory::weapons, sementara pengguna account1387 tidak memilikinya (karena mereka belum menemukan apa pun). Pengguna account1138 hanya menggunakan dua item untuk kunci urutan mereka (karena mereka belum memiliki inventaris) sedangkan pengguna lain menggunakan tiga item.
DynamoDB memungkinkan Anda secara selektif mengambil item dari koleksi item ini untuk melakukan hal berikut:
-
Mengambil semua item dari pengguna tertentu
-
Mengambil hanya satu item dari pengguna tertentu
-
Mengambil semua item dari jenis tertentu milik pengguna tertentu
Mempercepat kueri dengan mengatur data Anda dengan koleksi item
Dalam contoh ini, masing-masing item dalam tiga koleksi item ini mewakili pemain dan model data yang dipilih untuk contoh ini, berdasarkan pola akses permainan dan pemain. Data apa yang dibutuhkan game? Kapan game membutuhkannya? Seberapa sering game membutuhkannya? Berapa biaya untuk melakukannya dengan cara ini? Keputusan pemodelan data ini dibuat berdasarkan jawaban atas pertanyaan-pertanyaan ini.
Dalam game ini, ada halaman berbeda yang disajikan kepada pemain untuk inventaris senjata dan halaman lain untuk baju besi. Ketika pemain membuka inventaris mereka, senjata ditampilkan terlebih dahulu karena halaman itu perlu dimuat dengan sangat cepat, sementara halaman inventaris berikutnya dapat dimuat setelah itu. Karena masing-masing jenis item ini bisa sangat besar karena pemain memperoleh lebih banyak item dalam game, setiap halaman inventaris adalah itemnya sendiri dalam koleksi item pemain di database.
Bagian berikut membahas lebih lanjut tentang bagaimana Anda dapat berinteraksi dengan koleksi item melalui operasi Query.