Microsoft AZ-204: Azure Cosmos DB — Lernleitfaden

Teil des Microsoft Azure Developer Associate AZ-204 — Lernleitfaden. Üben Sie mit verifizierten Antworten im Microsoft-Prüfungscenter, oder absolvieren Sie zeitlich begrenzte Übungstests auf ExamRoll.io.

Überblick

Azure Cosmos DB ist eine vollständig verwaltete, global verteilte Multimodell-Datenbank, die für elastisch skalierbare Anwendungen mit niedriger Latenz entwickelt wurde. Sie stellt mehrere APIs über eine gemeinsame, partitionierte Speicher- und Replikations-Engine bereit, bietet fünf anpassbare Konsistenzebenen und umfassende SLAs für Verfügbarkeit, Latenz, Durchsatz und Konsistenz. Daten werden in Konten, Datenbanken und Containern (oder Sammlungen/Tabellen/Graphen je nach API) organisiert. Container werden horizontal partitioniert und über einen Partitionsschlüssel skaliert. Alle Operationen werden in Anforderungseinheiten (Request Units, RUs) gemessen, einer normalisierten Währung, die CPU, IOPS und Arbeitsspeicher abstrahiert.

APIs und Programmierbarkeit

Cosmos DB unterstützt mehrere Wire-kompatible APIs, sodass Sie native SDKs und Treiber verwenden können, ohne Ihr Datenmodell neu schreiben zu müssen:

Zu den gängigen SDK-Operationen über alle APIs hinweg gehören CRUD, optimistische Nebenläufigkeit mit ETags, Upserts, serverseitige Skripte (gespeicherte Prozeduren, Trigger) und UDFs (SQL API). Abfragen werden parametrisiert, um RUs zu reduzieren und die Sicherheit zu verbessern. Massenoperationen und Streaming-APIs minimieren den Client-Overhead und die RU-Kosten bei der Erfassung mit hohem Durchsatz.

Konsistenz, Indizierung und Abfragesemantik

Cosmos DB bietet fünf klar definierte Konsistenzebenen pro Konto (die pro Anfrage in vielen SDKs überschrieben werden können):

Die Indizierung ist für die SQL API standardmäßig automatisch und konsistent. Jedes Element und jede Eigenschaft wird ohne Schemaverwaltung indiziert, sodass Schreibvorgänge den Index sofort aktualisieren (Indizierungsmodus: Konsistent). Sie können die Indizierungsrichtlinie verfeinern, um:

Achten Sie auf die Elementgröße und die Abfragestruktur. Die SQL API erzwingt ein Limit für die Elementgröße (z. B. 2 MB), und partitionsübergreifende Abfragen, große Projektionen und komplexe Prädikate erhöhen den RU-Verbrauch. Verwenden Sie selektive Projektionen, geeignete Filter und partitionsbewusste Abfragen, um die RU-Kosten zu minimieren.

Partitionierung und Durchsatz (RUs)

Cosmos DB trennt zwischen logischen und physischen Partitionen:

Wählen Sie einen effektiven Partitionsschlüssel mit hoher Kardinalität und gleichmäßiger Zugriffsverteilung über die Zeit. Gute Schlüssel korrelieren mit Ihrem primären Zugriffspfad (z. B. userId, deviceId, tenantId oder orderId). Vermeiden Sie Schlüssel mit niedriger Kardinalität oder zeitbasierte Schlüssel, die zu einer Schieflage (Skew) führen (z. B. country, status oder day). Wenn keine einzelne Eigenschaft geeignet ist:

Durchsatzmodelle:

Techniken zur RU-Optimierung umfassen Punktlesevorgänge (Point Reads) nach ID+Partitionsschlüssel, parametrisierte Abfragen, selektive Projektionen, Denormalisierung zur Reduzierung von JOIN-ähnlichen Mustern und die Verwendung des Change Feed für abgeleitete Ansichten anstelle komplexer Abfragen über mehrere Container. Verwenden Sie ETags mit If-Match zur Nebenläufigkeitssteuerung, um RU-intensive Wiederholungsversuche zu vermeiden. Überwachen Sie RU-Metriken und Drosselung (Throttling, HTTP 429) und implementieren Sie Wiederholungsrichtlinien mit Jitter in den SDKs.

Globale Verteilung und Änderungsfeed

Die schlüsselfertige, multiregionale Verteilung von Cosmos DB ermöglicht es Ihnen, jederzeit Regionen hinzuzufügen oder zu entfernen. Alle Regionen sind lesbar; die Aktivierung von multiregionalen Schreibvorgängen ermöglicht gleichzeitige Schreibvorgänge überall mit einer Leselatenz von unter 10 ms im 99. Perzentil in benachbarten Regionen. Client-SDKs sollten mit bevorzugten Regionen konfiguriert werden, um den Datenverkehr lokal zu leiten und ein reibungsloses Failover zu ermöglichen. In .NET geben Sie bevorzugte Regionen über CosmosClientOptions ApplicationPreferredRegions an (oder das Äquivalent in anderen SDKs). Multiregionale Schreibvorgänge erfordern eine Richtlinie zur Konfliktlösung:

Der Änderungsfeed stellt ein geordnetes, nur anfügbares Protokoll (Append-Only) von Änderungen pro logischem Partitionsschlüssel bereit. Er ist ideal für:

Praktisches Problemszenario

Spotify muss einen global verfügbaren Personalisierungsdienst bereitstellen, der Benutzerinteraktionen in Echtzeit erfasst, benutzerspezifische Empfehlungen aktualisiert und Lesevorgänge mit geringer Latenz aus der nächstgelegenen Region bereitstellt. Schreibvorgänge können von mobilen Clients weltweit erfolgen, und Aktualisierungen von Empfehlungen müssen an nachgelagerte Systeme verteilt werden (Fan-Out).

  1. Auswahl der Cosmos DB SQL (Core) API mit multiregionalen Schreibvorgängen
  1. Definition eines Partitionsschlüssels mit hoher Kardinalität und hierarchischer Schlüssel
  1. Konfiguration des Autoscale-Durchsatzes für die primären Container
  1. Einstellung der Konsistenz auf „Session“ auf Kontoebene
  1. Implementierung der Änderungsfeed-Verarbeitung mit Azure Functions und dem Change Feed Processor
  1. Erstellung eines abgeleiteten Empfehlungs-Containers mit einer angepassten Indizierungsrichtlinie
  1. Aktivierung der globalen Verteilung mit bevorzugten Regionen in den SDKs
  1. Konfiguration der Konfliktlösung und Beobachtbarkeit (Observability)

Diese Architektur liefert global Lese- und Schreibvorgänge mit geringer Latenz, eine resiliente Ereignisverarbeitung über den Änderungsfeed, kosteneffizientes Autoscaling und eine robuste Konsistenzsemantik, die für Personalisierungs-Workloads geeignet ist.


Azure Storage und Blob Storage · Alle Domänen · Azure-Containerlösungen

Diese Fragen üben → · Zeitlich begrenzte Übung auf ExamRoll.io →

Pass the whole exam — not just this question

You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.

Bestehe deine Prüfung →

Microsoft durchsuchen →

Related guides

All-in-One Zugang

Ein Abonnement. Jede Prüfung.

Jeder Plan schaltet unbegrenzte Antwortsuche, Übungstests, KI-Erklärungen und die vollständige Ressourcenbibliothek frei – in über 20 Sprachen.

Monatlich
24.87
Just €0.83/day
Alles inklusive:
  • Unbegrenzte Antwortsuche
  • Unbegrenzte Übungstests
  • KI-gestützte Erklärungen
  • Vollständige Ressourcenbibliothek
  • Über 20 Sprachen
  • Wöchentliche Inhaltsaktualisierungen
  • Belohnungen & Empfehlungen
  • Priorisierter Support
Kostenlose Testphase starten

Keine Kreditkarte erforderlich*

Bestes Preis-Leistungs-Verhältnis
12 Monate
179.87
Just €0.49/daySave 40%
Alles inklusive:
  • Unbegrenzte Antwortsuche
  • Unbegrenzte Übungstests
  • KI-gestützte Erklärungen
  • Vollständige Ressourcenbibliothek
  • Über 20 Sprachen
  • Wöchentliche Inhaltsaktualisierungen
  • Belohnungen & Empfehlungen
  • Priorisierter Support
Kostenlose Testphase starten

Keine Kreditkarte erforderlich*

✓ Kostenloser Plan enthalten · ✓ Jederzeit kündbar · ✓ Alle Pläne schalten das vollständige Produkt frei