Cara Mengatur Kunci Partisi DynamoDB

Cara Mengatur Kunci Partisi Dynamodb



Produktivitas basis data apa pun bergantung pada aksesibilitas data karena mencari item dari beberapa objek terbukti sangat sibuk. Sering kali, cara Anda menanyakan database selalu menjadi pertimbangan serius. Kunci partisi adalah titik masuk utama Anda di DynamoDB kapan pun Anda ingin membuat kueri yang sangat efisien.

Biasanya, kunci partisi di seluruh tabel bersifat unik. Dengan demikian, tidak mungkin memiliki dua atau lebih item dengan kunci partisi yang sama dalam satu tabel, tetapi kebalikannya dapat terjadi bila digunakan dalam indeks. Selain itu, kunci partisi tidak mungkin diubah setelah Anda membuat tabel karena tidak dapat diubah.







Artikel ini membahas tentang kunci partisi. Kami akan fokus pada mengapa Anda memerlukan kunci partisi dan praktik terbaik untuk diikuti saat menyetelnya. Terakhir, kita akan melihat bagaimana kunci partisi DynamoDB sangat penting.



Apa itu Kunci Partisi DynamoDB dan Mengapa Penting?

Kunci partisi adalah kunci utama sederhana di DynamoDB, seringkali terdiri dari satu atribut. Setiap item dalam tabel DynamoDB memiliki kunci partisi unik untuk mengaktifkan proses kueri yang cepat dan efisien.



Anda dapat memasangkan kunci primer dengan kunci pengurutan untuk membuat kunci primer gabungan yang berisi dua atribut. Saat digunakan bersama, Anda dapat mengatur semua data di bawah kunci partisi menggunakan nilai kunci pengurutan.





Karena DynamoDB mencadangkan data sebagai konsorsium atribut yang disebut item, atribut tersebut memiliki kunci nilai utama yang unik untuk kemudahan aksesibilitas. Khususnya, item di DynamoDB serupa dengan catatan, bidang, kolom, atau baris di sebagian besar sistem database.

Selain itu, DynamoDB memungkinkan Anda untuk mendistribusikan data ke dalam partisi hingga unit penyimpanan 10 GB. Oleh karena itu, setiap tabel dapat memiliki satu atau lebih partisi. Anda dapat menggunakan nilai kunci partisi sebagai input ke fungsi hash internal database, dengan output dari fungsi hash yang menentukan partisi tempat item disimpan. Selain itu, lokasi suatu item menentukan partisi penyimpanannya.



Cara Mengatur Kunci Partisi DynamoDB

Mengatur kunci partisi bisa menjadi tugas berat jika Anda belum memahami konsepnya. Namun, proses ini bisa menjadi mudah dan efisien setelah Anda mengumpulkan tip dan trik yang diperlukan. Berikut ini adalah beberapa praktik terbaik untuk diikuti saat menyiapkan kunci partisi:

1. Pilih Kunci Partisi yang Tepat

Jenis kunci partisi menentukan kenyamanan dan efisiensi kueri data Anda. Mereka adalah titik masuk utama untuk menanyakan data Anda, dan menentukan pola akses setiap aplikasi sangatlah penting.

Sebaiknya gunakan atribut kardinalitas tinggi saat menyiapkan kunci partisi DynamoDB Anda. Atribut kardinalitas tinggi menampilkan nilai yang berbeda untuk setiap item dan dapat mencakup employee_id, employee_no, order_id, emailid, customerid, atau orderid.

2. Gunakan Konvensi Penamaan PK

Kunci partisi sering menggunakan konvensi penamaan pk. Metode penamaan ini menjamin mekanisme penamaan yang tepat tanpa membedakan berdasarkan jenis atau model item yang diwakili.

Misalnya, meskipun Anda mungkin tergoda untuk menggunakan postID dan userID sebagai kunci partisi untuk model Posting dan Pengguna dalam sebuah tabel, DynamoDB hanya mengizinkan satu kunci partisi untuk setiap tabel. Dengan demikian, Anda tidak dapat menggunakan dua dalam satu tabel. Perhatikan bahwa tabel tanpa kunci pengurutan dapat memiliki kunci partisi ID.

3. Gunakan Atribut Komposit

Beberapa tabel lebih diuntungkan dari kunci komposit. Artinya, Anda memerlukan lebih dari satu atribut untuk membentuk kunci unik. Misalnya, Anda dapat dengan mudah menggunakan customer_ID, country_code, dan product_ID untuk membentuk kunci partisi (customerid#countrycode#productid). Pada saat yang sama, Anda dapat menggunakan order_id sebagai kunci pengurutan.

4. Tambahkan Angka Acak dengan Tepat

Jika Anda mengharapkan volume penulisan yang sangat besar untuk setiap kunci, menggunakan awalan atau akhiran tambahan membuat kasus penggunaan berat menjadi lebih efisien. Misalnya, Anda dapat menggunakan nomor faktur bersama serangkaian nomor acak sebagai kunci partisi Anda. Ingatlah untuk memisahkan berbagai bagian dari kunci partisi Anda. Misalnya, InvoiceNumber#125656#0 sebagai kunci partisi ideal untuk penggunaan berat dengan ribuan penulisan per detik.

Buat Kunci Partisi DynamoDB

Seperti kunci pengurutan, membuat kunci partisi di DynamoDB melibatkan pembuatan skema kunci untuk tabel Anda. Tentu saja, ini terjadi saat Anda membuat tabel. Ini sering melibatkan deskripsi atribut Anda menggunakan nama atribut di samping jenis atribut. Sintaks berikut akan membantu:

AttributeName=string,KeyType=string ...

Dalam sintaks yang diberikan, nama atribut adalah nama sebenarnya dari atribut sedangkan tipe atribut dapat berupa String(S), Number(N), atau Binary(B).

Anda juga dapat memilih untuk menggunakan sintaks JSON seperti yang ditunjukkan berikut ini:

[

{

'NamaAtribut': 'string',

'KeyType': 'HASH'

}

...

]

Sintaks mana pun yang Anda pilih, peran atribut mengasumsikan fungsi HASH karena kami membuat kunci partisi. Sebaliknya, tipe kunci mengasumsikan fungsi RANGE saat membuat kunci pengurutan.

Terakhir, Anda juga dapat mengubah kunci partisi menggunakan utilitas berikut:

DynamoDBClient.updateItem({
'TableName': 'myTable_Name',
'Kunci': {
'pk': {
'S': 'my_PartitionKey'
}
},
'UpdateExpression': 'SET #emailaddress = :alamat email',
'NamaAtributEkspresi': {
'#email': 'alamat email'
},
'ExpressionAttributeValues': {
':alamat email': {
'S': ' [email dilindungi] '
}
}
})

Utilitas yang diberikan memperbarui atribut email Anda agar terlihat seperti yang Anda miliki di [email dilindungi] untuk item di mana kunci partisi (pk) sama dengan my_PartitionKey.

Kesimpulan

Saat menyiapkan kunci partisi DynamoDB, tidak ada metode universal tunggal. Membuat dan menggunakan kunci partisi bergantung pada use case. Selain itu, Anda dapat melihat berbagai pendekatan yang tersedia dan menemukan yang paling sesuai untuk aplikasi Anda. Pastikan Anda mematuhi pedoman yang diberikan.