Cara Menetapkan Kunci Isih DynamoDB

Cara Menetapkan Kunci Isih Dynamodb



DynamoDB terus berkembang popular kerana keupayaannya untuk menyusun data dalam jadual. Di luar jadual, DynamoDB mempunyai kunci utama yang membantu kebolehgunaan pangkalan data dan kemudahan yang datang dengan memproses pertanyaan dan imbasan melalui jadual atau pangkalan data anda.

Memahami cara menetapkan kekunci isihan DynamoDB semasa membuat jadual membantu anda mengatur data anda. Lebih-lebih lagi, ia meningkatkan kecekapan mendapatkan semula data anda apabila anda memerlukan apa-apa.

Artikel ini memfokuskan pada kekunci isihan DynamoDB. Selain membincangkan apa itu kunci isihan DynamoDB, kami juga akan membincangkan cara menetapkan dan menggunakannya.







Apakah Kekunci Isih DynamoDB dan Bilakah Ia Berkenaan?

Kekunci isih ialah atribut yang digunakan dalam DynamoDB untuk menyusun item dalam partition. Biasanya, beberapa item boleh mempunyai nilai kunci partition yang serupa tetapi mempunyai nilai kunci isihan yang berbeza. Sudah tentu, DynamoDB menyokong menggunakan kekunci partition sahaja dan menggabungkan kedua-dua kekunci partition dan kekunci isihan dalam satu jadual.



Dalam keadaan sedemikian, kunci utama terdiri daripada kunci partition dan kunci isihan, dengan nilainya masing-masing ialah productID dan productType. Gabungan atribut ini, dikenali sebagai kunci komposit, menjadikan pengambilan item lebih mudah dan lebih cekap. Selain itu, kekunci partition menggunakan fungsi HASH dalaman manakala kekunci isihan menggunakan fungsi RANGE.



Panduan Langkah demi Langkah tentang Cara Menyediakan Kunci Isih dalam Jadual Dynamo DB

Seperti dengan kekunci partition, mencipta kekunci isihan DynamoDB berlaku semasa anda menyediakan jadual DynamoDB. Kedua-dua kes melibatkan penciptaan skema utama terlebih dahulu. Memandangkan kekunci isihan tidak bebas dan berfungsi bersama-sama dengan kekunci partition dalam kekunci komposit utama atau gabungan kekunci julat cincang, anda mulakan dengan mencipta kekunci partition untuk jadual anda.





Langkah 1: Cipta Kunci Pembahagian untuk Jadual Anda

Kekunci isih mempunyai hubungan langsung dengan kekunci partition. Dan kerana kunci partition adalah yang paling dominan dalam susunan DynamoDB, mulakan dengan mencipta kunci partition selepas memasukkan nama jadual anda. Anda boleh menggunakan sintaks trengkas berikut:

AttributeName=string,KeyType=string ...

Jenis atribut dalam sintaks trengkas boleh sama ada a Rentetan(S), Nombor(N), atau Perduaan(B). Tetapi jika anda mendapati sintaks trengkas menyusahkan dalam menetapkan kunci partition anda, anda boleh menggunakan sintaks JSON berikut:



[
{
'AttributeName': 'rentetan',
'KeyType': 'HASH'
}
...
]

Langkah 2: Tambah Kunci Isih

Teruskan menambah kunci isihan menggunakan sintaks JSON berikut. Kunci isihan seharusnya bukan ID. Sebaliknya, gunakan Jenis atribut.

[
{
'AttributeName': 'rentetan',
'KeyType': 'RANGE'
}
...
]

Ambil perhatian bahawa kami menggunakan fungsi HASH semasa mencipta kunci partition DynamoDB. Sekarang, kami menggunakan fungsi RANGE apabila menyediakan kekunci isihan DynamoDB.

Dalam Konsol Pengurusan AWS, anda mempunyai pilihan untuk menambah kunci isihan, menandakannya seperti yang ditunjukkan dan menambah kunci anda. Sebagai contoh, kita boleh mempunyai customer_ID atau order_ID sebagai kunci partition dan invoice_number sebagai kunci isihan dalam jadual untuk Pesanan Baharu.

Rujuk ilustrasi berikut:

Adalah penting untuk ambil perhatian bahawa kedua-dua kunci partition dan atribut kunci isihan boleh dalam bentuk String(S), Number(N) atau Binary(B).

Di Java, jadual Muzik dengan kedua-dua kunci partition dan entri kunci isihan sepatutnya kelihatan seperti ini:

pakej com.dynamoDbDemo.entity;
import com.amazonaws.services.dynamodbv2.datamodeling.*;

@DynamoDBTable(tableName = 'Muzik')
Muzik kelas awam {
Artis Rentetan peribadi;
Tajuk lagu String peribadi;

@DynamoDBHashKey(attribute)
}

public void setSongTitle(String SongTitle) {
ini.songTitle = songTitle;
}

@DynamoDBRangeKey(attribute) // kunci isih

awam String getSongTitle() {
kembalikan tajuk lagu;
}

public void setSongTitle(String songTitle) {
ini.songTitle = songTitle;
}

Dalam baris arahan sebelumnya, DynamoDBTable ialah anotasi Java yang digunakan untuk memetakan harta kepada atribut jadual manakala anotasi DynamoDBHashKey mengatributkan kunci partition. Begitu juga, anotasi DynamoDBRangeKey mendedikasikan item kepada atribut kunci isihan. Anda boleh meneruskan untuk menambah atribut bukan utama yang lain pada jadual anda.

Kesimpulan

Panduan ini membincangkan tentang cara menyediakan kunci isihan pada jadual DynamoDB. Ambil perhatian bahawa anda tidak boleh menukar atribut utama isihan anda sebaik sahaja anda menciptanya. Sekali lagi, adalah penting untuk ambil perhatian bahawa DynamoDB hanya akan menanyakan jadual dan indeks anda menggunakan kunci partition dan kunci isihan bersama-sama. Anda tidak boleh menggunakan kekunci isihan sahaja untuk menanyakan jadual anda. Pastikan anda menentukan kekunci partition terlebih dahulu.