Kuidas määrata DynamoDB sortimisvõtit

Kuidas Maarata Dynamodb Sortimisvotit



DynamoDB populaarsus kasvab jätkuvalt tänu oma võimele korraldada andmeid tabelites. Lisaks tabelitele on DynamoDB-l esmased võtmed, mis aitavad kaasa andmebaasi kasutatavusele ja mugavustele, mis kaasnevad teie tabeli või andmebaasi päringute töötlemise ja skannimisega.

DynamoDB sortimisvõtmete määramise mõistmine tabelite loomisel aitab teil andmeid korrastada. Veelgi enam, see parandab teie andmete allalaadimise tõhusust alati, kui midagi vajate.

See artikkel keskendub DynamoDB sortimisvõtmetele. Lisaks DynamoDB sortimisvõtmete arutamisele käsitleme ka nende seadistamist ja kasutamist.







Mis on DynamoDB sortimisklahvid ja millal neid saab rakendada?

Sorteerimisvõtmed on atribuudid, mida kasutatakse DynamoDB-s partitsiooni üksuste korraldamiseks. Tavaliselt võivad mitmel üksusel olla sarnased partitsioonivõtme väärtused, kuid erinevad sortimisvõtme väärtused. Loomulikult toetab DynamoDB ainult partitsioonivõtmete kasutamist ja nii partitsioonivõtmete kui ka sortimisvõtmete ühendamist ühes tabelis.



Sellistel juhtudel koosneb primaarvõti partitsioonivõtmest ja sortimisvõtmest, mille väärtusteks on vastavalt productID ja productType. See atribuutide kombinatsioon, mida nimetatakse liitvõtmeks, muudab üksuste toomise lihtsamaks ja tõhusamaks. Lisaks kasutab partitsioonivõti sisemist HASH-funktsiooni, sortimisvõti aga funktsiooni RANGE.



Üksikasjalik juhend Dynamo DB tabelites sortimisvõtme seadistamiseks

Nagu partitsioonivõtmete puhul, toimub DynamoDB sortimisvõtmete loomine DynamoDB tabeli seadistamisel. Mõlemal juhul tuleb kõigepealt luua võtmeskeem. Kuna sortimisklahvid ei ole sõltumatud ja töötavad koos peamise liitvõtme või räsivahemiku klahvikombinatsiooni partitsioonivõtmetega, looge kõigepealt oma tabeli jaoks partitsioonivõti.





1. samm: looge oma tabeli jaoks partitsioonivõti

Sorteerimisvõtmetel on otsene seos partitsioonivõtmetega. Ja kuna partitsioonivõti on DynamoDB paigutuses kõige domineerivam, alustage partitsioonivõtme loomisega pärast tabeli nime sisestamist. Võite kasutada järgmist stenogrammi süntaksit:

AttributeName=string,KeyType=string ...

Atribuudi tüüp stenogrammi süntaksis võib olla kas a String(S), arv(N) või binaar(B). Kuid kui teile tundub, et partitsioonivõtme seadistamine on stenogrammi süntaks tülikas, saate kasutada järgmist JSON-i süntaksit.



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

2. samm: lisage sortimisvõti

Jätkake sortimisvõtme lisamisega järgmise JSON-i süntaksi abil. Sorteerimisvõti ei tohiks olla ID. Selle asemel kasutage atribuuti Type.

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

Pange tähele, et kasutasime DynamoDB partitsioonivõtme loomisel funktsiooni HASH. Nüüd kasutame DynamoDB sortimisklahvi seadistamisel funktsiooni RANGE.

AWS-i halduskonsoolis on teil võimalus lisada sortimisvõti, märkida see näidatud kujul ja lisada oma võti. Näiteks võib uute tellimuste tabelis olla partitsioonivõtmeks kliendi_ID või tellimuse_ID ja sortimisvõtmeks arve_number.

Vaadake järgmist illustratsiooni:

Oluline on märkida, et nii partitsioonivõtme kui ka sortimisvõtme atribuudid võivad olla string(S), Number(N) või binaar(B) kujul.

Javas peaks nii partitsioonivõtme kui ka sortimisvõtme kirjetega muusikatabel välja nägema järgmine:

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

@DynamoDBTable(tabelinimi = 'Muusika')
avalik klass Muusika {
privaatne keelpillikunstnik;
privaatne String laulu pealkiri;

@DynamoDBHashKey(attribute)
}

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

@DynamoDBRangeKey(attribute) // sortimisvõti

public String getSongTitle() {
tagasta laulu pealkiri;
}

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

Eelmistel käsuridadel on DynamoDBTable Java märkus, mida kasutatakse atribuudi vastendamiseks tabeli atribuudiga, samas kui DynamoDBHashKey märkus atribuudib partitsioonivõtme. Samamoodi pühendab DynamoDBRangeKey annotatsioon üksuse sortimisvõtme atribuudile. Saate jätkata oma tabelisse muude mittepõhiste atribuutide lisamisega.

Järeldus

Selles juhendis käsitletakse DynamoDB tabelis sortimisvõtme seadistamist. Pange tähele, et te ei saa oma sortimisvõtme atribuute pärast nende loomist muuta. Jällegi on oluline märkida, et DynamoDB küsib teie tabeleid ja indekseid ainult partitsioonivõtme ja sortimisvõtme abil. Tabelite päringute tegemiseks ei saa kasutada ainult sortimisklahve. Veenduge, et määraksite kõigepealt partitsioonivõtme.