Cum să setați cheia de sortare DynamoDB

Cum Sa Setati Cheia De Sortare Dynamodb



DynamoDB continuă să crească în popularitate pentru capacitatea sa de a organiza datele în tabele. Dincolo de tabele, DynamoDB are cheile primare care ajută la utilizarea bazei de date și la confortul care vine cu procesarea interogărilor și scanărilor prin tabelul sau baza de date.

Înțelegerea modului de setare a cheilor de sortare DynamoDB atunci când creați tabele vă ajută în mare măsură să vă organizați datele. Mai mult, îmbunătățește eficiența regăsirii datelor dvs. oricând aveți nevoie de ceva.

Acest articol se concentrează pe cheile de sortare DynamoDB. Pe lângă discuțiile despre cheile de sortare DynamoDB, vom discuta și despre cum să le setăm și să le folosim.







Ce sunt cheile de sortare DynamoDB și când sunt aplicabile?

Cheile de sortare sunt atribute care sunt utilizate în DynamoDB pentru a organiza elementele într-o partiție. În mod obișnuit, mai multe articole pot avea valori similare ale cheii de partiție, dar au valori diferite ale cheilor de sortare. Desigur, DynamoDB acceptă utilizarea numai a cheilor de partiție și combinarea ambelor chei de partiție și chei de sortare într-un singur tabel.



În astfel de cazuri, cheia primară constă dintr-o cheie de partiție și o cheie de sortare, cu valorile lor fiind un productID și, respectiv, productType. Această combinație de atribute, cunoscută sub numele de cheie compusă, face recuperarea elementelor mai ușoară și mai eficientă. Mai mult, tasta de partiție folosește funcția HASH internă, în timp ce tasta de sortare folosește funcția RANGE.



Ghid pas cu pas despre cum să configurați o cheie de sortare în tabelele Dynamo DB

Ca și în cazul cheilor de partiție, crearea cheilor de sortare DynamoDB are loc pe măsură ce configurați tabelul DynamoDB. Ambele cazuri implică mai întâi crearea unei scheme cheie. Deoarece cheile de sortare nu sunt independente și funcționează împreună cu cheile de partiție din cheia compozită primară sau din combinația de taste hash-range, începeți prin a crea o cheie de partiție pentru tabelul dvs.





Pasul 1: Creați o cheie de partiție pentru tabelul dvs

Cheile de sortare au o relație directă cu cheile de partiție. Și deoarece cheia de partiție este cea mai dominantă în aranjamentul DynamoDB, începeți prin a crea cheia de partiție după ce ați introdus numele tabelului. Puteți utiliza următoarea sintaxă scurtă:

AttributeName=șir,KeyType=șir...

Tipul de atribut din sintaxa scurtă poate fi fie a Șir (S), număr (N) sau binar (B). Dar dacă vi se pare greoaie sintaxa scurtă la setarea cheii de partiție, puteți utiliza următoarea sintaxă JSON:



[
{
„AttributeName”: „șir”,
„KeyType”: „HASH”
}
...
]

Pasul 2: Adăugați o cheie de sortare

Continuați să adăugați o cheie de sortare folosind următoarea sintaxă JSON. O cheie de sortare nu trebuie să fie un ID. În schimb, utilizați un atribut Tip.

[
{
„AttributeName”: „șir”,
„KeyType”: „RANGE”
}
...
]

Rețineți că am folosit funcția HASH când am creat o cheie de partiție DynamoDB. Acum, folosim funcția RANGE când setăm cheia de sortare DynamoDB.

În AWS Management Console, aveți opțiuni pentru adăugarea unei chei de sortare, marcarea acesteia așa cum se arată și adăugarea cheii. De exemplu, putem avea client_ID sau order_ID ca cheie de partiție și invoice_number ca cheie de sortare într-un tabel pentru comenzi noi.

Consultați următoarea ilustrație:

Este important de reținut că atât cheia de partiție, cât și atributele cheii de sortare pot fi sub forma unui șir (S), număr (N) sau binar (B).

În Java, un tabel Muzică cu chei de partiție și chei de sortare ar trebui să arate astfel:

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

@DynamoDBTable(tableName = „Muzică”)
Muzică la clasă publică {
Private String Artist;
Private String songTitle;

@DynamoDBHashKey(attribute)
}

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

@DynamoDBRangeKey(attribute) // cheie de sortare

public String getSongTitle() {
returnează titlul cântecului;
}

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

În liniile de comandă anterioare, DynamoDBTable este adnotarea Java care este utilizată pentru maparea unei proprietăți la atributul tabelului, în timp ce adnotarea DynamoDBHashKey atribuie o cheie de partiție. În mod similar, adnotarea DynamoDBRangeKey dedică un articol atributului cheie de sortare. Puteți continua să adăugați alte atribute non-primare la tabelul dvs.

Concluzie

Acest ghid discută despre cum să configurați o cheie de sortare pe un tabel DynamoDB. Rețineți că nu vă puteți modifica atributele cheii de sortare odată ce le-ați creat. Din nou, este esențial să rețineți că DynamoDB va interoga numai tabelele și indexurile folosind o cheie de partiție și o cheie de sortare împreună. Nu puteți utiliza singur cheile de sortare pentru a interoga tabelele. Asigurați-vă că specificați mai întâi cheia de partiție.