Datenmodellierung für DynamoDB-Tabellen - Amazon-DynamoDB

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Datenmodellierung für DynamoDB-Tabellen

Bevor wir uns mit der Datenmodellierung befassen, ist es wichtig, einige Grundlagen von DynamoDB zu klären. DynamoDB ist eine NoSQL-Schlüsselwert-Datenbank, die ein flexibles Schema ermöglicht. Der Satz von Datenattributen kann, abgesehen von den Schlüsselattributen für jedes Element, entweder einheitlich oder diskret sein. Das DynamoDB-Schlüsselschema hat entweder die Form eines einfachen Primärschlüssels, bei dem ein Partitionsschlüssel ein Element eindeutig identifiziert, oder es hat die Form eines zusammengesetzten Primärschlüssels, bei dem eine Kombination aus Partitionsschlüssel und Sortierschlüssel ein Element eindeutig definiert. Der Partitionsschlüssel wird gehasht, um den physischen Speicherort der Daten zu ermitteln und sie abzurufen. Daher ist es wichtig, ein Attribut mit hoher Kardinalität und horizontal skalierbarem Attribut als Partitionsschlüssel auszuwählen, um eine gleichmäßige Verteilung der Daten zu gewährleisten. Das Sortierschlüsselattribut ist im Schlüsselschema optional. Ein Sortierschlüssel ermöglicht die Modellierung von 1:n-Beziehungen und die Erstellung von Elementsammlungen in DynamoDB. Sortierschlüssel werden auch als Bereichsschlüssel bezeichnet. Sie werden verwendet, um Elemente in einer Artikelsammlung zu sortieren und ermöglichen auch flexible bereichsbasierte Operationen.

Weitere Informationen und bewährte Methoden zum DynamoDB-Schlüsselschema finden Sie im Folgenden:

Sekundäre Indizes werden häufig benötigt, um zusätzliche Abfragemuster in DynamoDB zu unterstützen. Sekundäre Indizes sind Schattentabellen, in denen dieselben Daten über ein anderes Schlüsselschema organisiert sind als in der Basistabelle. Ein lokaler sekundärer Index (LSI) verwendet denselben Partitionsschlüssel wie die Basistabelle und ermöglicht die Verwendung eines alternativen Sortierschlüssels, mit dem er die Kapazität der Basistabelle gemeinsam nutzen kann. Ein globaler sekundärer Index (GSI) kann einen anderen Partitionsschlüssel sowie ein anderes Sortierschlüsselattribut als die Basistabelle haben, was bedeutet, dass das Durchsatzmanagement für einen GSI unabhängig von der Basistabelle ist.

Weitere Informationen zu Sekundärindizes und bewährte Methoden finden Sie im Folgenden:

Schauen wir uns die Datenmodellierung nun etwas genauer an. Das Entwerfen eines flexiblen und hochgradig optimierten Schemas für DynamoDB oder eine beliebige NoSQL-Datenbank kann eine anspruchsvolle Fertigkeit sein. Dieses Modul soll Sie bei der Entwicklung eines mentalen Flussdiagramms für das Design eines Schemas unterstützen, das Sie vom Anwendungsfall zur Produktion führt. Wir beginnen mit einer Einführung in die grundlegende Wahl eines Designs: ein Design mit einer einzelnen Tabelle oder ein Design mit mehreren Tabellen. Anschließend überprüfen wir die Vielzahl von Designmustern (Bausteinen), die verwendet werden können, um verschiedene Organisations- oder Leistungsergebnisse für Ihre Anwendung zu erzielen. Schließlich bieten wir eine Vielzahl an vollständigen Schemadesign-Paketen für verschiedene Anwendungsfälle und Branchen an.

Bild, das die konzeptionelle Beziehung zwischen den Daten, den darunter befindlichen Blöcken und dem diesen zugrunde liegenden Fundament zeigt.