Einführung

Abgeschlossen

Azure Cosmos DB ist die vollständig verwaltete NoSQL-Datenbank von Microsoft in Azure. Als NoSQL-Datenbank ist Azure Cosmos DB sowohl horizontal skalierbar als auch nicht relational.

Dank der horizontalen Skalierbarkeit kann Azure Cosmos DB Datengrößen unterstützen, die weit über die einer typischen relationalen Datenbank hinausgehen. Horizontale Skalierbarkeit bedeutet auch, dass die Datenbank vorhersagbare Leistung bietet.

Benutzer müssen zum Erreichen dieses Grads an Skalierbarkeit die Konzepte und Techniken für die Modellierung und Partitionierung von Daten verstehen, die einzigartig für NoSQL-Datenbanken sind.

Szenario

Angenommen, Sie arbeiten für ein Startup-Unternehmen im Einzelhandelsbereich und entwerfen eine Datenbank zum Verwalten von Onlinebestellungen. Sie arbeiten an einem Vorschlag für einen effizienten Datenbankentwurf mithilfe der Cosmos DB Core-API (SQL). Ihnen wurde ein Entitätsbeziehungsmodell bereitgestellt, mit dem Sie beginnen können. Sie möchten ein Höchstmaß an Skalierbarkeit, Leistung und Effizienz bieten, und um dies zu erreichen, müssen die Daten ordnungsgemäß modelliert werden.

Das folgende Entitätsbeziehungsdiagramm (ER-Modell) enthält die Details der neun Entitäten, mit denen Sie arbeiten werden. Das relationale Modell verfügt über neun Entitäten, die jeweils in ihrer eigenen Tabelle enthalten sind.

Diagram that shows the relational model for our example application.

Wie werden wir vorgehen?

In diesem Modul wird das vorhandene relationale Datenmodell in eine NoSQL-Datenbank für die E-Commerce-Anwendung umgestaltet. Während dieses Prozesses lernen Sie die folgenden Konzepte kennen:

  • Unterschiede zwischen relationalen und NoSQL-Datenbanken: Sie lernen etwas über einige der Unterschiede zwischen NoSQL-Datenbanken und relationalen Datenbanken und erfahren, warum diese so beschaffen sind.
  • Verwenden der Zugriffsmuster von Anwendungsdaten zum Modellieren von Daten: Sie erfahren, inwieweit sich das Verständnis des Funktionsprinzips der von Anwendungen verwendeten Lese- und Schreibvorgänge für Daten auf das Modellieren der Daten für NoSQL-Datenbanken auswirkt.
  • Einbetten oder Festlegen von Verweisen: Sie erfahren, wann Sie Daten in dasselbe Dokument einbetten und wann Sie Daten als separates Dokument speichern sollten.
  • Auswählen eines Partitionsschlüssels: Sie lernen die wichtigsten Konzepte kennen, die für die Auswahl des besten Partitionsschlüssels erforderlich sind, um heiße Partitionen zu vermeiden und Workloads mit hohem Lese- oder Schreibaufkommen oder beidem zu optimieren.
  • Modellieren von Lookup- oder Verweisdaten: Schließlich erfahren Sie, wie Sie Daten modellieren, die als Lookup oder Verweis für die Suche nach anderen Daten verwendet werden.

Was ist das Hauptziel?

Am Ende dieses Moduls verfügen Sie über die erforderlichen Kenntnisse und Fähigkeiten, um Daten für eine NoSQL-Datenbank richtig zu modellieren und zu partitionieren, die unter Azure Cosmos DB bereitgestellt wird (wenn Sie es mit dem Begleitmodul „Optimieren Ihrer Datenbank mit erweiterten Modellierungsmustern für Azure Cosmos DB“ kombinieren).

Nach Abschluss dieses Moduls können Sie folgende Aufgaben durchführen:

  • Bestimmen von Zugriffsmustern für Daten
  • Anwenden von Datenmodell- und Partitionierungsstrategien zur Unterstützung einer effizienten und skalierbaren NoSQL-Datenbank