Kako postaviti DynamoDB ključ sortiranja

Kako Postaviti Dynamodb Kljuc Sortiranja



DynamoDB nastavlja rasti u popularnosti zbog svoje sposobnosti organiziranja podataka u tablicama. Osim tablica, DynamoDB ima primarne ključeve koji pomažu upotrebljivosti baze podataka i pogodnosti koje dolazi s obradom upita i skeniranjem kroz vašu tablicu ili bazu podataka.

Razumijevanje postavljanja DynamoDB ključeva za sortiranje prilikom izrade tablica uvelike vam pomaže u organiziranju podataka. Štoviše, poboljšava učinkovitost dohvaćanja vaših podataka kad god vam bilo što zatreba.

Ovaj se članak fokusira na DynamoDB ključeve za sortiranje. Osim rasprave o tome što su DynamoDB ključevi za sortiranje, također ćemo raspravljati o tome kako ih postaviti i koristiti.







Što su DynamoDB ključevi za sortiranje i kada su primjenjivi?

Ključevi sortiranja su atributi koji se koriste u DynamoDB-u za organiziranje stavki u particiji. Tipično, nekoliko stavki može imati slične vrijednosti particijskog ključa, ali različite vrijednosti ključa sortiranja. Naravno, DynamoDB podržava korištenje samo particijskih ključeva i kombiniranje particijskih ključeva i ključeva za sortiranje u jednoj tablici.



U takvim se slučajevima primarni ključ sastoji od particijskog ključa i ključa za sortiranje, a njihove su vrijednosti productID i productType. Ova kombinacija atributa, poznata kao složeni ključ, čini dohvaćanje stavki lakšim i učinkovitijim. Štoviše, particijski ključ koristi internu funkciju HASH dok ključ za sortiranje koristi funkciju RANGE.



Vodič korak po korak o tome kako postaviti ključ sortiranja u Dynamo DB tablicama

Kao i kod particijskih ključeva, stvaranje DynamoDB ključeva za sortiranje događa se dok postavljate DynamoDB tablicu. Oba slučaja uključuju prvo stvaranje sheme ključa. Budući da ključevi sortiranja nisu neovisni i rade zajedno s particijskim ključevima u primarnom kompozitnom ključu ili kombinaciji ključeva raspona raspršivanja, počinjete stvaranjem particijskog ključa za svoju tablicu.





Korak 1: Stvorite ključ particije za svoju tablicu

Ključevi za razvrstavanje imaju izravan odnos s ključevima particije. A budući da je particijski ključ najdominantniji u DynamoDB aranžmanu, počnite kreiranjem particijskog ključa nakon što unesete naziv svoje tablice. Možete koristiti sljedeću skraćenu sintaksu:

AttributeName=niz,KeyType=niz ...

Vrsta atributa u skraćenoj sintaksi može biti a Niz (S), broj (N) ili binarni (B). Ali ako smatrate da je skraćena sintaksa glomazna pri postavljanju vašeg particijskog ključa, možete upotrijebiti sljedeću JSON sintaksu:



[
{
'Naziv atributa': 'niz',
'KeyType': 'HASH'
}
...
]

Korak 2: Dodajte ključ sortiranja

Nastavite s dodavanjem ključa za sortiranje pomoću sljedeće JSON sintakse. Ključ sortiranja ne bi trebao biti ID. Umjesto toga upotrijebite vrstu atributa.

[
{
'Naziv atributa': 'niz',
'KeyType': 'RANGE'
}
...
]

Imajte na umu da smo koristili funkciju HASH kada smo kreirali DynamoDB particijski ključ. Sada koristimo funkciju RANGE kada postavljamo DynamoDB ključ za sortiranje.

U AWS konzoli za upravljanje imate opcije za dodavanje ključa za sortiranje, označavanje kao što je prikazano i dodavanje vašeg ključa. Na primjer, možemo imati customer_ID ili order_ID kao particijski ključ i invoice_number kao ključ sortiranja u tablici za nove narudžbe.

Pogledajte sljedeću ilustraciju:

Važno je napomenuti da i particijski ključ i atributi ključa sortiranja mogu biti u obliku niza (S), broja (N) ili binarnog (B).

U Javi bi glazbena tablica s particijskim ključem i unosom ključa za sortiranje trebala izgledati ovako:

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

@DynamoDBTable(tableName = 'Glazba')
javna klasa Glazba {
privatni gudački umjetnik;
privatni String songTitle;

@DynamoDBHashKey(attribute)
}

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

@DynamoDBRangeKey(attribute) // ključ sortiranja

public String getSongTitle() {
vratiti naslov pjesme;
}

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

U prethodnim redcima naredbi, DynamoDBTable je Java napomena koja se koristi za mapiranje svojstva u atribut tablice, dok napomena DynamoDBHashKey pripisuje particijski ključ. Slično, DynamoDBRangeKey napomena posvećuje stavku atributu ključa sortiranja. Možete nastaviti s dodavanjem drugih neprimarnih atributa u svoju tablicu.

Zaključak

Ovaj vodič govori o tome kako postaviti ključ sortiranja na DynamoDB tablici. Imajte na umu da ne možete promijeniti atribute ključa sortiranja nakon što ih stvorite. Opet, bitno je napomenuti da će DynamoDB postavljati upite vašim tablicama i indeksima samo koristeći particijski ključ i ključ za sortiranje zajedno. Ne možete koristiti samo ključeve sortiranja za upite u tablicama. Provjerite jeste li prvo naveli ključ particije.