Ako nastaviť kľúče oddielu DynamoDB

Ako Nastavit Kluce Oddielu Dynamodb



Produktivita akejkoľvek databázy závisí od dostupnosti údajov, pretože hľadanie položky z niekoľkých objektov môže byť hektické. Častokrát je to, ako sa dotazujete v databáze, vždy vážnou úvahou. Kľúče oddielov sú vašimi primárnymi vstupnými bodmi v DynamoDB vždy, keď chcete vykonávať vysoko efektívne dotazy.

Zvyčajne sú kľúče oddielov naprieč tabuľkami jedinečné. Nie je teda možné mať dve alebo viac položiek s rovnakým kľúčom oddielu v jednej tabuľke, ale pri použití v indexoch sa môže stať opak. Okrem toho, kľúče oddielov nie je možné po vytvorení tabuľky zmeniť, pretože sú nemenné.







Tento článok pojednáva o kľúčoch oddielov. Zameriame sa na to, prečo potrebujete kľúče oddielov a osvedčené postupy, ktoré treba dodržiavať pri ich nastavovaní. Nakoniec sa pozrieme na to, aké dôležité sú kľúče oddielu DynamoDB.



Čo je kľúč oddielu DynamoDB a prečo je dôležitý?

Kľúč oddielu je jednoduchý primárny kľúč v DynamoDB, ktorý často pozostáva z jedného atribútu. Každá položka v tabuľke DynamoDB má jedinečný kľúč oddielu, ktorý umožňuje rýchle a efektívne procesy dotazovania.



Primárny kľúč môžete spárovať s kľúčom triedenia a vytvoriť tak zložený primárny kľúč obsahujúci dva atribúty. Pri spoločnom použití môžete usporiadať všetky údaje pod kľúčom oddielu pomocou hodnoty kľúča triedenia.





Keďže DynamoDB vyhradzuje údaje ako konzorcium atribútov nazývaných položky, atribúty majú jedinečné kľúče primárnej hodnoty pre ľahkú dostupnosť. Je pozoruhodné, že položky v DynamoDB sú podobné záznamom, poliam, stĺpcom alebo riadkom vo väčšine databázových systémov.

Okrem toho vám DynamoDB umožňuje distribuovať údaje do oddielov s veľkosťou až 10 GB. Každá tabuľka teda môže mať jednu alebo viac oblastí. Hodnotu kľúča oddielu môžete použiť ako vstup do internej hašovacej funkcie databázy, pričom výstup z hašovacej funkcie určuje oddiel, v ktorom je položka uložená. Okrem toho umiestnenie položky určuje oddiel, v ktorom je uložená.



Ako nastaviť kľúče oddielu DynamoDB

Nastavenie kľúčov oddielov môže byť náročná úloha, ak ešte nerozumiete konceptu. Tento proces však môže byť jednoduchý a efektívny, keď získate potrebné tipy a triky. Nižšie sú uvedené niektoré z najlepších postupov, ktoré je potrebné dodržiavať pri nastavovaní kľúčov oddielov:

1. Zvoľte správne klávesy oddielu

Druh kľúčov oddielov určuje pohodlie a efektívnosť dotazovania na vaše údaje. Sú to primárne vstupné body pre dopytovanie vašich údajov a definovanie vzorov prístupu každej aplikácie je rozhodujúce.

Pri nastavovaní kľúčov oddielov DynamoDB sa odporúča použiť atribúty vysokej kardinality. Atribúty s vysokou kardinalitou obsahujú odlišné hodnoty pre každú položku a môžu zahŕňať zamestnanec_id, zamestnanec_nie, id_objednávky, e-mailové id, customerid alebo orderid.

2. Použite konvenciu pomenovania PK

Kľúče oddielov často používajú konvenciu pomenovania pk. Táto metóda pomenovania zaručuje presný mechanizmus pomenovania bez diskriminácie na základe typu alebo modelu reprezentovanej položky.

Napríklad, zatiaľ čo môžete byť v pokušení použiť postID a userID ako kľúče oddielov pre modely Post a User v tabuľke, DynamoDB povoľuje iba jeden kľúč oddielu pre každú tabuľku. Preto nemôžete použiť dva v jednej tabuľke. Všimnite si, že tabuľky bez triediacich kľúčov môžu mať kľúče oddielov ID.

3. Používajte zložené atribúty

Niektoré tabuľky ťažia viac zo zložených kľúčov. To znamená, že na vytvorenie jedinečných kľúčov potrebujete viac ako jeden atribút. Napríklad, môžete pohodlne použiť customer_ID, country_code a product_ID na vytvorenie kľúča oddielu (customerid#countrycode#productid). Zároveň môžete použiť order_id ako kľúč triedenia.

4. Vhodne pridajte náhodné čísla

Ak očakávate enormný objem zápisov pre každý kľúč, použitie ďalšej predpony alebo prípony zefektívni prípady ťažkého použitia. Ako kľúč oddielu môžete napríklad použiť číslo faktúry spolu so sadou náhodných čísel. Nezabudnite oddeliť rôzne časti kľúča oddielu. Napríklad InvoiceNumber#125656#0 ako kľúč oddielu je ideálny na náročné používanie s tisíckami zápisov za sekundu.

Vytvorte kľúč oddielu DynamoDB

Podobne ako triediace kľúče, aj vytvorenie kľúča oddielu v DynamoDB zahŕňa vytvorenie kľúčovej schémy pre vašu tabuľku. To sa samozrejme stane, keď vytvoríte tabuľku. To často zahŕňa popis atribútu pomocou názvu atribútu popri type atribútu. Pomôže vám nasledujúca syntax:

AttributeName=reťazec,KeyType=reťazec ...

V danej syntaxi je názov atribútu skutočným názvom atribútu, zatiaľ čo typ atribútu môže byť reťazec (S), číslo (N) alebo binárny (B).

Môžete sa tiež rozhodnúť použiť syntax JSON, ako je uvedené nižšie:

[

{

'AttributeName': 'reťazec',

'KeyType': 'HASH'

}

...

]

Bez ohľadu na zvolenú syntax, rola atribútu preberá funkciu HASH, pretože vytvárame kľúč oddielu. Naopak, typ kľúča preberá funkciu RANGE pri vytváraní triediacich kľúčov.

Nakoniec je tiež možné zmeniť kľúč oddielu pomocou nasledujúceho nástroja:

DynamoDBClient.updateItem({
'TableName': 'myTable_Name',
'Kľúč': {
'pk': {
'S': 'my_PartitionKey'
}
},
'UpdateExpression': 'SET #emailaddress = :emailaddress',
'ExpressionAttributeNames': {
'#email': 'e-mailová adresa'
},
'ExpressionAttributeValues': {
':emailová adresa': {
'S': ' [e-mail chránený] '
}
}
})

Daný nástroj aktualizuje váš atribút e-mailu, aby vyzeral ako to, čo máte v [e-mail chránený] pre položku, kde sa kľúč oddielu (pk) rovná my_PartitionKey.

Záver

Pri nastavovaní kľúčov oddielu DynamoDB neexistuje jediná univerzálna metóda. Vytváranie a používanie kľúčov oddielov závisí od prípadu použitia. Okrem toho sa môžete pozrieť na rôzne dostupné prístupy a nájsť ten najvhodnejší pre vašu aplikáciu. Uistite sa, že dodržiavate uvedené pokyny.