Jak korzystać z globalnych tabel DynamoDB

Jak korzystać z globalnych tabel DynamoDB
Globalna tabela DynamoDB odnosi się do zbioru jednego lub kilku tabel należących do jednego konta AWS. Tabele globalne pomagają zorganizować zbiór atrybutów, które są budowane i stacjonowane na globalnym śladzie Amazon DynamoDB i zapewniają właścicielom kont w pełni zarządzanej, wielosaktywnej i wielu regionach.

Wyróżniają się w swojej zdolności do dostarczania lokalnych i szybkich wyników odczytu i zapisu dla wysoce skalowanych globalnych funkcji i aplikacji. Znane również jako repliki, tabele te kopiują strukturę i zawartość tabel DynamoDB w wybranych przez siebie regionach AWS.

W tym artykule omówiono, jakie są tabele repliki, ich korzyści i jak z nich korzystać. Co ważniejsze, omówimy, jak tworzyć i korzystać z globalnej tabeli DynamoDB.

Co to są tabele repliki?

Tabela repliki lub replika to jedna tabela DynamoDB, która stanowi część globalnej tabeli. Każda tabela repliki przechowuje podobny zestaw danych. Co ciekawe, chociaż globalna tabela często ma wiele replik, każda tabela DynamoDB nie może mieć więcej niż jednej repliki na region Amazon.

Wszystkie repliki w tabeli globalnej muszą mieć ten sam schemat klucza podstawowego i nazwa tabeli. Po dodaniu danych do tabeli repliki w danym regionie aplikacja automatycznie replikuje i propaguje dane do innych regionów.

Ale pomimo zawierania kilku replik, DynamoDB traktuje każdą tabelę jako pojedynczą jednostkę. Zawsze możesz dodać więcej replików do swojego globalnego stołu, który jest dostępny w innych regionach AWS. Umożliwia równoległe zapisy i odczyty we wszystkich regionach.

Jak działają tabele DynamoDB: za pomocą tabeli DynamoDB

Zakładamy, że masz już konto AWS, a jedną z twoich podstawowych usług na koncie jest DynamoDB. Zakładamy, że wiesz, jak utworzyć tabele DynamoDB. Należy zauważyć, że tabele DynamoDB różnią się od globalnych tabel DynamoDB.

Możesz zacząć od zalogowania się na swoje konto i utworzenia tabeli DynamoDB, tak jak zwykle. W tym samouczku używamy konsoli AWS do utworzenia tabeli, ale możesz wybrać CloudFormation, Dynobazę lub dowolną inną, której czujesz się komfortowo.

Krok 1: Utwórz nową tabelę DynamoDB.

Chcemy utworzyć stół repliki z USA na wschód (n. Virginia). Wszystkie strumienie DynamoDB są włączone (new_and_old_images). Nasza nazwa stołu to kolekcja filmów.

AWS DynamoDB Treate-Table \
--Kolekcja filmów z nazwy stołowej \
--definitions atrybut \
Atrybutename = z udziałem, atrybtuteType = s \
Atrybutename = movietitle, atrybtuteType = s \
--Key-Schema \
Atrybutename = z udziałem, klawisze = hash \
Atrybutename = movietitle, keyType = Range \
--Provisioned-Throughput \
ReadCapacicitunits = 20, WriteCapacicitunits = 10 \
--Specyfikacja strumienia streamenabled = true, StreamViewType = new_and_old_images \
--Region US-East-1

Krok 2: Utwórz identyczną kolekcję filmów o nazwie Film z US East (Ohio). Włącz strumienie DynamoDB, jak pokazano w pierwszym przykładzie.

AWS DynamoDB Treate-Table \
--Kolekcja filmów z nazwy stołowej \
--definitions atrybut \
Atrybutename = z udziałem, atrybtuteType = s \
Atrybutename = movietitle, atrybtuteType = s \
--Key-Schema \
Atrybutename = z udziałem, klawisze = hash \
Atrybutename = movietitle, keyType = Range \
--Provisioned-Throughput \
ReadCapacicitunits = 20, WriteCapacicitunits = 10 \
--Specyfikacja strumienia streamenabled = true, StreamViewType = new_and_old_images \
--Region US-East-2

Krok 3: Użyj dwóch replików, aby utworzyć globalną kolekcję filmów o nazwie filmy.

AWS DynamoDB Create-Global Table \
--Kolekcja filmów-globalnej nazwy \ \
--Region-grupa replikacji Nazwa = Us-East-1 Nazwa = US-WEAST-2 \
--Region US-East-1

Krok 4: Dodaj kolejny stół z innej Europy, powiedz n. Kalifornia.

AWS DynamoDB Treate-Table \
--Kolekcja filmów z nazwy stołowej \
--definitions atrybut \
Atrybutename = z udziałem, atrybtuteType = s \
Atrybutename = movietitle, atrybtuteType = s \
--Key-Schema \
Atrybutename = z udziałem, klawisze = hash \
Atrybutename = movietitle, keyType = Range \
--Provisioned-Throughput \
ReadCapacicitunits = 20, WriteCapacicitunits = 10 \
--Specyfikacja strumienia streamenabled = true, StreamViewType = new_and_old_images \
--Region US-West-1

Możesz dodać tabelę do wcześniej utworzonej tabeli globalnej. Oznacza to, że twoja globalna tabela ma teraz trzy repliki:

AWS DynamoDB aktualizacja-global-table \
--Kolekcja filmów-globalnej nazwy \ \
--Replica-updates 'create = regionName = US-West-1' \
--Region US-East-1

Krok 5: Sprawdź replikację, dodając nowy przedmiot z innego regionu, powiedz Europa (Irlandia). Możesz użyć wywołania API PUTITEM dla tej operacji.

AWS Dynamodb Put-item \
--Kolekcja filmów z nazwy stołowej \
--Pozycja '„W rolach głównych”: "s": "item_1", "movietitle": "s": "value value 1"' \ \
--Region UE-West-2

Możesz poczekać na kilka minut i potwierdzić, czy aktualizacje odniosły sukces z poprzednich regionów. Korzystamy z regionu USA Wschodu (Północna Wirginia).

AWS Dynamodb Get-Item \
--Kolekcja filmów z nazwy stołowej \
--Klucz „„ W rolach ”: " s ":" item_1 "," movietitle ": " s ":„ wartość filmu 1 " '\ \
--Region US-East-1

Korzyści z korzystania z tabel DynamoDB

Poniżej znajdują się podstawowe zalety globalnych tabel DynamoDB:

  1. Umożliwia odczytanie i zapisanie danych lokalnie, jednocześnie umożliwiając globalny dostęp do danych.
  2. Są trwałe, niezawodne i nie są podatne na uskoki wielu regionu.
  3. Tabele globalne są idealne dla organizacji, które chcą poprawić ich wydajność, ponieważ możesz rozpowszechniać dane w niespotykanych skalach.
  4. Zwiększają spójność i niezrównane rozwiązywanie konfliktów.

Wniosek

Ten samouczek krótko przeglądu DynamoDB globalnego wykorzystania danych, korzyści i atrybutów. Możesz teraz utworzyć i używać tabel DynamoDB bez żadnych problemów. Powodzenia!