Paweł Łukasiewicz
2021-11-20
Paweł Łukasiewicz
2021-11-20
Udostępnij Udostępnij Kontakt
Wprowadzenie

DynamoDB to w pełni zarządzalna usługa bazodanowa NoSQL, która pozwala na tworzenie tabel bazodanowych, które mogą przechowywać i pobierać dowolną ilość danych. Usługa ta automatycznie zarządza ruchem w tabelach na wielu serwerach i utrzymuje stałą wydajność. Podejście takie uwalnia programistów/architektów od obciążeń związanych z obsługą i skalowaniem rozproszonej bazy danych. Podobnie również jak w przypadku instancji EC2, Amazon dostarcza sprzęt, konfigurację, replikację danych, automatyczne aktualizacje oprogramowanie czy skalowanie klastra.

Zalety użycia DynamoDB

  • Usługa zarządzana przez Amazon: programiści nie muszą się martwić o konfigurację klastra rozproszonej bazy danych, zarządzanie bieżącymi operacjami, etc. Amazon zajmuje się obsługą wszystkich zawiłości związanych ze skalowaniem, partycjonowaniem i ponowym dzieleniem danych na więcej zasobów, aby spełnić wymagania dotyczące wydajność zapisu i odczytu;
  • Skalowalność: Brak konieczności martwienia się o predefiniowane limity ilości danych, które każda tabela może przechowywać. Każda ilość danych może być przechowywana i pobierana. DynamoDB będzie automatycznie rozszerzać się wraz z ilością danych przechowywanych w tabeli;
  • Szybkość: DynamoDB zapewnia wysoką przepustowość przy bardzo niskich opóźnieniach. W miarę wzrostu zbioru danych opóźnienia pozostają stabilne dzięki rozproszonej naturze algorytmów rozmieszczenia danych;
  • Wysoka dostępność: DynamoDB replikuje dane w co najmniej 3 różnych centrach danych. System działa i dostarcza dane nawet w warunkach różnych awarii;
  • Elastyczność: DynamoDB umożliwia tworzenie tabel dynamicznych, tj. tabela może posiadać dowolną liczbę atrybutów (w tym atrybuty wielowartościowe);
  • Ekonomiczność: płacimy za to z czego korzystamy bez żadnych minimalnych opłat. Struktura cenowa jest prosta i łatwa do obliczenia. Musimy jednak zwrócić uwagę na limity zapisu i odczytu danych, które mogą znacznie podnieść sumaryczny koszty korzystania z DynamoDB.

Tworzenie tabeli DynamoDB

  1. Przechodzimy pod adres https://console.aws.amazon.com/dynamodb/home lub wykorzystujemy wyszukiwarkę usług: AWS: DynamoDB
  2. Z poziomu kolejnego ekranu klikamy przycisk Create Table.
  3. Na ekranie konfiguracyjnym wypełniamy wymagane pola. DynamoDB jest bazą danych bez schematu, która wymaga jedynie nazwy tabeli oraz klucza głównego: AWS: DynamoDB
  4. Klikamy przycisk Create i czekamy na utworzenie naszej pierwszej tabeli: AWS: DynamoDB

Na ten moment to tyle. Jeżeli chcecie poeksperymentować z danymi możecie skorzystać z zakładki Items klikając przycisk Create Item. Sam proces dodawania czy definiowania obiektów może być nieco zaskakujący jeżeli do tej pory korzystaliście z MS SQL Server czy Oracle SQL Developer. DynamoDB reprezentuje jednak podejście NoSQL w którym w bazie danych możemy pomieścić wiele różnych modeli danych. Jakiś czas temu dodałem dwa wpisy na ten temat:

Pamiętajcie proszę, że te wpisy to jedynie wprowadzenie do usług oferowanych przez Amazon. Już niedługo poruszymy aspekty dużo bardziej interesujące z perspektywy programistycznej.