Hvordan du bruker dynamoDB globale tabeller

Hvordan du bruker dynamoDB globale tabeller
En dynamodb global tabell refererer til en samling av en enkelt eller flere tabeller som tilhører en AWS -konto. Globale tabeller er med på å organisere en samling attributter som er bygget og stasjonert på det globale Amazon DynamoDB-fotavtrykket og gir kontoeierne en fullt administrert, multi-aktiv og multiregion-database.

De skiller seg ut i sin evne til å levere lokale og raske lese-og-skrive forestillinger for høyt skalerte globale funksjoner og applikasjoner. Også kjent som kopier, kopierer disse tabellene strukturen og innholdet i DynamoDB -tabellene dine over AWS -regionene du ønsker.

Denne artikkelen diskuterer hva replikatabeller er, fordelene deres og hvordan du bruker dem. Enda viktigere er at vi vil diskutere hvordan du lager og bruker DynamoDB Global Table.

Hva er replikatabeller?

Et replikatabell, eller replika, er en dynamodb -tabell som utgjør en del av et globalt bord. Hver replika -tabell lagrer et lignende sett med data. Interessant nok, mens et globalt bord ofte har flere kopier, kan ikke hvert DynamoDB -tabell ha mer enn en kopi per Amazon -region.

Alle kopier i et globalt tabell må ha samme primære nøkkelskjema og tabellnavn. Når du legger til en data i en replikatabell i et gitt område, repliserer og formerer applikasjonen automatisk dataene til de andre regionene.

Men til tross for at de inneholder flere kopier, behandler DynamoDB hver tabell som en enhet. Du kan alltid legge til flere kopier til det globale bordet ditt som er tilgjengelig i andre AWS -regioner. Det tillater parallelle skriver og leser i alle regioner.

Hvordan DynamoDB -tabeller fungerer: Bruke en DynamoDB -tabell

Vi antar at du allerede har en AWS -konto, og en av dine primære tjenester på kontoen er en dynamodb. Vi antar at du vet hvordan du lager DynamoDB -tabellene. Merk at DynamoDB -tabeller er forskjellig fra DynamoDB Global Tables.

Du kan begynne med å logge på kontoen din og opprette en DynamoDB -tabell som du vanligvis gjør. I denne opplæringen bruker vi AWS -konsollen for å lage et bord, men du kan velge CloudFormation, Dynobase eller noe annet som du er komfortabel med å bruke.

Trinn 1: Lag en ny DynamoDB -tabell.

Vi ønsker å lage et replikatabell fra oss øst (n. Virginia). Alle DynamoDB -strømmen er aktivert (new_and_old_images). Tabellnavnet vårt er filmsamling.

aws dynamodb create-table \
--Bordnavn Filmsamling \
--attributtdefinisjoner \
AttributeName = med hovedrollen, attributetype = S \
AttributeName = Movietitle, AttributeType = S \
--Key-Schema \
AttributeName = med hovedrollen, keyType = hash \
AttributeName = Movietitle, KeyType = Range \
--levert gjennomstrømning \
ReadCapacityUnits = 20, WriteCapacityUnits = 10 \
--Stream-Specification StreamEnabled = True, StreamViewType = new_and_old_images \
--Region US-East-1

Steg 2: Lag en identisk tabell som heter Movie Collection fra US East (Ohio). Aktiver DynamoDB -strømningene som vist i det første eksemplet.

aws dynamodb create-table \
--Bordnavn Filmsamling \
--attributtdefinisjoner \
AttributeName = med hovedrollen, attributetype = S \
AttributeName = Movietitle, AttributeType = S \
--Key-Schema \
AttributeName = med hovedrollen, keyType = hash \
AttributeName = Movietitle, KeyType = Range \
--levert gjennomstrømning \
ReadCapacityUnits = 20, WriteCapacityUnits = 10 \
--Stream-Specification StreamEnabled = True, StreamViewType = new_and_old_images \
--Region US-East-2

Trinn 3: Bruk de to kopiene til å lage en global tabell som heter Movie Collection.

aws dynamodb create-global-table \
--Global-Table-Name Movie Collection \
--Replikeringsgruppe Regionnavn = US-East-1 Regionnavn = US-East-2 \
--Region US-East-1

Trinn 4: Legg til et annet bord fra et annet Europa, si n. California.

aws dynamodb create-table \
--Bordnavn Filmsamling \
--attributtdefinisjoner \
AttributeName = med hovedrollen, attributetype = S \
AttributeName = Movietitle, AttributeType = S \
--Key-Schema \
AttributeName = med hovedrollen, keyType = hash \
AttributeName = Movietitle, KeyType = Range \
--levert gjennomstrømning \
ReadCapacityUnits = 20, WriteCapacityUnits = 10 \
--Stream-Specification StreamEnabled = True, StreamViewType = new_and_old_images \
--Region US-West-1

Du kan legge bordet til det globale tabellen som tidligere er opprettet. Dette innebærer at det globale bordet ditt nå har tre kopier:

AWS DynamoDB Update-Global-Table \
--Global-Table-Name Movie Collection \
--replica-updates 'create = regionname = us-west-1' \
--Region US-East-1

Trinn 5: Bekreft replikasjonen ved å legge til et nytt element fra en annen region, si Europa (Irland). Du kan bruke PutItem API -samtalen for denne operasjonen.

aws dynamodb put-element \
--Bordnavn Filmsamling \
--elementet '"Starring": "s": "item_1", "movietitle": "s": "filmverdi 1"' \
--Region EU-West-2

Du kan vente i minutter og bekrefte om oppdateringene dine var vellykkede fra tidligere regioner. Vi bruker den amerikanske øst (Nord -Virginia) -regionen.

aws dynamodb get-item \
--Bordnavn Filmsamling \
--Key '"Starring": "s": "item_1", "movietitle": "s": "filmverdi 1"' \
--Region US-East-1

Fordelene ved å bruke DynamoDB -tabeller

Følgende er kjernefordelene ved DynamoDB Global Tables:

  1. Det lar deg lese og skrive dataene lokalt mens du tillater global datatilgang.
  2. De er holdbare, pålitelige og ikke utsatt for feil i flere regioner.
  3. Globale tabeller er ideelle for organisasjoner som ønsker å forbedre ytelsen, siden du kan distribuere dataene på enestående skala.
  4. De forbedrer konsistensen og uslåelig konfliktløsning.

Konklusjon

Denne opplæringen oversikter kort om DynamoDB Global databruk, fordeler og attributter. Du kan nå opprette og bruke DynamoDB -tabellene uten problemer. Lykke til!