Amazon DynamoDB ist eine serverlose, nicht-relationale Datenbank, die horizontal skalierbar ist und hohe Leistung (geringe Latenz beim Datenabruf) sowie hohe Verfügbarkeit (über mehrere Verfügbarkeitszonen hinweg) mit nahezu unbegrenztem Datenfluss und Speicherplatz bietet. Sie arbeitet mit mehreren Tabellen, die Werte mit beliebigen Attributen enthalten können, solange ein Primärschlüssel, bestehend aus einem Partitionsschlüssel (HASH) oder einer Partition und einem Sortierschlüssel (HASH+RANGE), bereitgestellt wird. Jeder Eintrag in einer Tabelle sollte alle erforderlichen Daten enthalten, ohne dass zusätzliche Abfragen erforderlich sind. Mit Ausnahme des Primärschlüssels, der bei der Tabellenerstellung definiert werden muss, können alle anderen Attribute der Elemente im Laufe der Zeit hinzugefügt werden. Darüber hinaus bietet DynamoDB eine großartige Möglichkeit zur schnellen Abfrage von Daten mit parallelen Tabellenscans und gefilterten Abfragen mit globalen (alternativer Primärschlüssel, kann nach der Tabellenerstellung hinzugefügt/geändert werden) und lokalen (alternativer Sortierschlüssel, muss zum Zeitpunkt der Tabellenerstellung definiert werden) Sekundärindizes, wodurch Abfragen effizienter und flexibler werden.
Alles in allem machen die Vorteile von Amazon DynamoDB, wie ein flexibles Schema, keine zu verwaltende Server, keine Ausfallzeiten und automatische Skalierung zur schnellen Anpassung an aktuelle Kapazitätsanforderungen diesen AWS-Service zu einer gut geeigneten Wahl als Datenspeicher für einen Microservice.
Darüber hinaus lassen sich die oben genannten Services nahtlos in Amazon CloudWatch - einen Überwachungs- und Warndienst - integrieren, was die Beobachtbarkeit, die Fehlersuche und die Robustheit eines Services sowie die tägliche Arbeit der Entwickler erleichtert.