Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Dalam tabel Amazon DynamoDB, kunci utama yang secara unik mengidentifikasi setiap item dalam tabel dapat terdiri dari kunci partisi dan kunci sortir.
Kunci urutan yang dirancang dengan baik memiliki dua manfaat utama:
Kunci-kunci tersebut mengumpulkan informasi terkait di satu tempat sehingga dapat dikueri secara efisien. Desain kunci urutan yang cermat memungkinkan Anda mengambil grup item terkait yang biasanya dibutuhkan menggunakan kueri rentang dengan operator seperti
begins_with
,between
,>
,<
, dan sebagainya.-
Kunci sortir komposit memungkinkan Anda menentukan hubungan hierarkis (one-to-many) dalam data yang dapat Anda kueri di setiap tingkat hierarki.
Misalnya, dalam tabel yang mencantumkan lokasi geografis, Anda dapat menyusun kunci urutan sebagai berikut.
[country]#[region]#[state]#[county]#[city]#[neighborhood]
Ini akan memungkinkan Anda membuat kueri rentang yang efisien untuk daftar lokasi di salah satu tingkat agregasi ini, dari
country
, hingganeighborhood
, dan segala sesuatu di antaranya.
Menggunakan kunci urutan untuk kontrol version
Banyak aplikasi yang perlu menyimpan riwayat revisi tingkat item untuk tujuan audit atau kepatuhan dan agar dapat mengambil versi terbaru dengan mudah. Ada pola desain efektif yang dapat mencapai tujuan ini menggunakan prefiks kunci urutan:
Untuk setiap item baru, buat dua salinan item: Satu berisi prefiks nomor versi nol (seperti
v0_
) di awal kunci urutan, dan satu lagi berisi prefiks nomor versi satu (sepertiv1_
).Setiap kali item diperbarui, gunakan prefiks versi berikutnya yang lebih tinggi di kunci urutan versi yang diperbarui, dan salin konten yang diperbarui ke item dengan prefiks versi nol. Artinya, versi terbaru item apa pun dapat ditemukan dengan mudah menggunakan prefiks nol.
Misalnya, produsen suku cadang dapat menggunakan skema seperti yang diilustrasikan di bawah ini.

Item Equipment_1
melewati serangkaian audit oleh berbagai auditor. Hasil dari setiap audit baru dicatat dalam item baru di tabel, dimulai dengan versi nomor satu, lalu menambahkan nomor untuk setiap revisi berturut-turut.
Ketika setiap revisi baru ditambahkan, lapisan aplikasi mengganti konten item versi nol (memiliki kunci urutan yang sama dengan v0_Audit
) dengan konten revisi yang baru.
Setiap kali aplikasi perlu mengambil status audit terbaru, aplikasi dapat mengkueri prefiks kunci urutan v0_
.
Jika aplikasi perlu mengambil seluruh riwayat revisi, aplikasi dapat mengkueri semua item pada kunci partisi item dan memfilter item v0_
.
Desain ini juga berfungsi untuk audit di beberapa bagian peralatan, jika Anda menyertakan masing-masing bagian- IDs dalam kunci sortir setelah awalan kunci sortir.