iX 10/2020
S. 106
Wissen
NoSQL

DynamoDB unter der Haube – Speichermodell und Hashalgorithmus

NoSQL-Magie in AWS

Thomas Drilling

Während AWS relativ viel zum Datenmodell und Bereitstellungsmodus seiner verwalteten Datenbank DynamoDB verrät, muss tiefer forschen, wer Details zum Speichermodell oder zum Hash­algorithmus erfahren möchte. Letzterer ist der Schlüssel zur Performance der modernen NoSQL-Engine.

Obwohl AWS-Nutzer Amazons DynamoDB primär als einfach zu benutzende, via REST-API ansprechbare NoSQL-Datenbank für Programmierer und Sysops-Engineering wahrnehmen, ist der Dienst tief in der Geschichte von Amazon.com verwurzelt. Seit Jahrzehnten bildet er das Speicherfundament der Website des Onlinehändlers. In den Jahren 2000 bis 2004 sah sich Amazon gezwungen, Entwicklung und Bereitstellung der bis dato monolithisch konzipierten Website auf ein dezentrales, Devops-getriebenes und mittels Microservices realisiertes Modell umzustellen. Darin kommuniziert jeder Dienst über eine öffentliche REST-API. Die Amazon Web Services waren also im Grunde ein Nebenprodukt eines neuen Betriebsmodells. 

Letztlich betraf dies auch den Storage-­Layer. Statt jede Komponente mit einem eigenen Datenbankdienst auszustatten, ersann man bei Amazon DynamoDB zunächst für interne Zwecke. Insbesondere die relationalen Datenbanksysteme von Drittanbietern hatten sich zunehmend als ungeeignet erwiesen. Da die meisten Dienste von Amazon hauptsächlich das Lesen von Primärschlüsseln für ihre Daten mit maximaler Geschwindigkeit als oberste Priorität verlangen, ist DynamoDB als hochverfügbarer Schlüsselwertspeicher mit niedriger Latenz, persistenter Speicherung und hohen Anfrageraten konzipiert.

Kommentieren