Zum Hauptinhalt springen
Cloud / Azure / Produkte / Azure Cosmos DB - Azure Datenbanken

Azure Cosmos DB - Azure Datenbanken

Azure Cosmos DB: Globally distributed, multi-model NoSQL database for mission-critical applications

databases
Preismodell Request Units (RU/s) or Serverless
Verfügbarkeit 60+ regions, multi-region writes
Datensouveränität EU regions with data residency guarantees
Zuverlässigkeit 99.999% for multi-region, 99.99% single region SLA

Azure Cosmos DB is a fully managed NoSQL and relational database for modern app development with guaranteed single-digit millisecond response times and 99.999% availability. Supports multiple APIs including MongoDB, Cassandra, Gremlin, and native NoSQL.

Was ist Azure Cosmos DB?

Azure Cosmos DB ist eine vollständig verwaltete, global verteilte NoSQL- und relationale Datenbank von Microsoft Azure für unternehmenskritische Anwendungen. Der Service garantiert einstellige Millisekunden-Antwortzeiten und bis zu 99,999% Verfügbarkeit bei Multi-Region-Deployments. Im Gegensatz zu klassischen Datenbanken bietet Cosmos DB eine horizontale Skalierung über beliebig viele Azure-Regionen hinweg, ohne dass Sie sich um Replikation oder Sharding kümmern müssen.

Ein Alleinstellungsmerkmal ist die Multi-Model-Unterstützung: Sie können dieselbe Datenbank über verschiedene APIs ansprechen, darunter NoSQL (Document), MongoDB, Cassandra, Gremlin (Graph) und Table API. Das bedeutet, Sie können bestehende MongoDB- oder Cassandra-Anwendungen ohne Code-Änderungen migrieren. Cosmos DB bietet zudem fünf konfigurierbare Konsistenzlevel (Strong, Bounded Staleness, Session, Consistent Prefix, Eventual), die einen Mittelweg zwischen strikter Konsistenz und maximaler Performance ermöglichen. Damit können Sie für jede Anwendung die passende Balance zwischen Verfügbarkeit, Latenz und Konsistenz wählen.

Bei der Kapazitätsplanung stehen zwei Modelle zur Verfügung: Serverless eignet sich für unvorhersehbare Workloads mit sporadischem Traffic und rechnet pro Request ab. Provisioned Throughput (manuell oder mit Autoscale) ist dagegen für Production-Workloads mit konstantem oder planbarem Traffic konzipiert. Autoscale passt die Request Units (RU/s) automatisch an die Last an und optimiert so Kosten bei schwankender Auslastung. Beide Modelle bieten automatische Indizierung aller Properties, Change Feed für Event-driven Architekturen und Point-in-Time Restore für bis zu 30 Tage.

Typische Anwendungsfälle

Global verteilte E-Commerce-Plattformen

Online-Shops mit weltweiter Kundschaft nutzen Cosmos DB für Produktkataloge, Warenkörbe und Bestellhistorien. Durch Multi-Region-Writes können Kunden in Asien, Europa und Amerika gleichzeitig einkaufen, während lokale Replikate für niedrige Latenzen sorgen. Session-Konsistenz garantiert, dass ein Kunde seine eigenen Änderungen sofort sieht, auch wenn globale Replikation einige Sekunden dauert.

IoT-Telemetrie und Zeitreihendaten

Millionen von IoT-Geräten senden kontinuierlich Sensordaten an Cosmos DB. Die Serverless-Option eignet sich für unregelmäßige Datenströme, während Autoscale bei konstanten Schreiblasten Kosten optimiert. Change Feed ermöglicht Stream-Processing über Azure Functions, um Anomalien in Echtzeit zu erkennen. Die automatische Indizierung aller Properties erlaubt Ad-hoc-Queries ohne Schema-Design.

Personalisierungs- und Recommendation-Engines

Streaming-Dienste und Content-Plattformen speichern Nutzerprofile, Watch-History und Präferenzen in Cosmos DB. Die Graph API (Gremlin) modelliert Beziehungen zwischen Nutzern, Inhalten und Tags für kollaborative Filter. Mit Session-Konsistenz sehen Nutzer ihre Interaktionen sofort, während Eventual Consistency für globale Recommendations ausreicht. Sub-10ms-Latenzen ermöglichen Echtzeit-Personalisierung während des Browsings.

Gaming-Leaderboards und Session-Stores

Multiplayer-Games nutzen Cosmos DB für Echtzeit-Ranglisten, Spielerstände und Matchmaking-Daten. Die niedrige Latenz ist entscheidend für Gameplay-Features wie Live-Turniere. Multi-Region-Deployments reduzieren Ping-Zeiten für Spieler weltweit. Die Table API bietet einfache Key-Value-Zugriffe für Session-Daten, während NoSQL API komplexe Spielerprofile unterstützt.

Real-Time Analytics und Dashboards

Business-Intelligence-Anwendungen aggregieren Daten aus verschiedenen Quellen in Cosmos DB für Live-Dashboards. Change Feed triggert Azure Functions, die Metriken berechnen und in Power BI visualisieren. Bounded Staleness Consistency garantiert, dass Analysten maximal X Sekunden alte Daten sehen. Autoscale passt sich automatisch an Spitzenzeiten an, etwa bei Monats-Reports.

Mobile Apps mit Offline-Sync

Mobile Banking-, CRM- und Field-Service-Apps synchronisieren Daten zwischen Geräten und Cloud. Die MongoDB API ermöglicht Offline-First-Architekturen mit lokalen Datenbanken auf dem Device. Conflict Resolution Policies lösen Merge-Konflikte automatisch. Strong Consistency für kritische Transaktionen kombiniert mit Eventual für unkritische Daten optimiert Performance und Compliance.

Multi-Region SaaS-Plattformen

B2B-SaaS-Anbieter hosten mandantenfähige Anwendungen in Cosmos DB mit Data Residency pro Region. EU-Kunden werden ausschließlich in europäischen Regionen gespeichert, US-Kunden in amerikanischen. Partition Keys nach Tenant-ID isolieren Daten logisch. Provisioned Throughput mit Reserved Capacity senkt Kosten bei planbaren SaaS-Workloads um bis zu 65%.

Azure Cosmos DB vs. Alternativen

Bei der Wahl einer Cloud-Lösung stellt sich oft die Frage nach Alternativen. Azure Cosmos DB konkurriert mit vergleichbaren Services anderer Cloud-Provider:

  • AWS: DynamoDB
  • Google Cloud: Firestore

Während die Funktionalität oft ähnlich ist, unterscheiden sich die Services in Pricing-Modellen, regionaler Verfügbarkeit und Integrations-Ökosystem. Azure punktet besonders bei Enterprise-Kunden mit Microsoft-Stack und Hybrid-Cloud-Szenarien.

Best Practices für Azure Cosmos DB

Konsistenzlevel strategisch wählen

Verwenden Sie nicht pauschal Strong Consistency. Session Consistency ist für die meisten Anwendungen ausreichend und bietet bessere Latenz bei Multi-Region-Deployments. Strong nur für Finanztransaktionen oder Inventar-Management. Eventual für Analytics und Reporting. Bounded Staleness als Mittelweg, wenn Sie maximale Staleness-Zeit definieren müssen (z.B. max 5 Minuten alte Daten).

Partition Key Design von Anfang an planen

Der Partition Key ist die wichtigste Design-Entscheidung und kann nachträglich nicht geändert werden. Wählen Sie einen Key mit hoher Kardinalität (viele eindeutige Werte) und gleichmäßiger Verteilung der Requests. Vermeiden Sie Hot Partitions durch Zeitstempel als Key. Beispiel: Bei E-Commerce nicht productId (wenige Bestseller), sondern userId oder Composite Key userId-date.

Serverless vs. Provisioned bewusst entscheiden

Serverless eignet sich für Dev/Test-Umgebungen, Prototypen und sporadische Workloads unter 50 GB. Production-Systeme mit konstantem Traffic fahren mit Provisioned günstiger. Autoscale ist ideal für schwankende, aber planbare Workloads (z.B. Business-Hours). Berechnen Sie den Break-Even: Ab ca. 100 RU/s Dauerlast ist Provisioned günstiger als Serverless.

Indexing Policies optimieren

Nutzen Sie Custom Indexing Policies, um Kosten und Performance zu optimieren. Schließen Sie Pfade aus, die nie abgefragt werden (z.B. große Binärdaten oder interne IDs). Composite Indexes beschleunigen Multi-Property-Queries. Spatial Indexes nur aktivieren, wenn Sie Geo-Queries nutzen. Jeder zusätzliche Index erhöht Write-Kosten um 10-20%.

Query-Performance durch Design verbessern

Vermeiden Sie Cross-Partition-Queries in Hot Paths. Denormalisieren Sie Daten, um Joins zu eliminieren. Nutzen Sie Projections, um nur benötigte Properties zu laden. Implementieren Sie Continuation Tokens für Pagination statt OFFSET. Change Feed statt Polling für Änderungserkennung. Monitoren Sie RU-Verbrauch pro Query im Azure Portal.

Multi-Region Writes gezielt einsetzen

Aktivieren Sie Multi-Region Writes nur wenn nötig, da es Kosten verdoppelt und Conflict Resolution erfordert. Für read-heavy Workloads reicht Single-Write-Region mit read-only Replicas. Definieren Sie explizite Conflict Resolution Policies (Last-Write-Wins, Custom Merge, oder Application-Level). Testen Sie Konfliktszenarien vor Production-Deployment.

Kosten mit Autoscale und Reserved Capacity optimieren

Nutzen Sie Autoscale statt manueller Skalierung, um Idle-Zeiten zu vermeiden. Reserved Capacity bietet bis zu 65% Rabatt bei 1-3-Jahres-Commitment. Kombinieren Sie beides: Reserved für Baseline-Load, Autoscale für Peaks. Monitoren Sie Normalized RU Consumption im Portal, um Über-Provisionierung zu erkennen. Löschen Sie alte Daten mit TTL statt manueller Cleanup-Jobs.

Häufig gestellte Fragen zu Azure Cosmos DB

Welches Konsistenzlevel sollte ich wählen?

Für die meisten Anwendungen ist Session Consistency optimal: Sie garantiert, dass ein Nutzer seine eigenen Schreibvorgänge sofort liest, während andere Nutzer eventuelle Konsistenz erfahren. Strong Consistency benötigen Sie nur für Finanztransaktionen, Inventar-Systeme oder Auktionen. Eventual ist ausreichend für Analytics, Caching oder soziale Features. Bounded Staleness bietet einen Mittelweg mit garantierter maximaler Verzögerung (z.B. max 10 Sekunden alt).

Wie designe ich den richtigen Partition Key?

Der Partition Key ist die wichtigste Entscheidung und kann nachträglich nicht geändert werden. Wählen Sie eine Property mit hoher Kardinalität (viele eindeutige Werte) und gleichmäßiger Request-Verteilung. Vermeiden Sie Status-Felder (wenige Werte) oder Timestamps (Hot Partitions). Gute Beispiele: userId, tenantId, deviceId. Schlechte Beispiele: category, createdDate, status. Bei ungleichmäßiger Verteilung nutzen Sie synthetische Keys wie userId-region.

Was kostet Azure Cosmos DB wirklich?

Das Preismodell basiert auf Request Units (RU/s), Storage (GB) und Multi-Region-Replikation. Ein Punkt-Read (1 KB) kostet 1 RU, ein Write 5 RU. Bei Provisioned Throughput zahlen Sie pro 100 RU/s ca. 5,50 Euro/Monat. Serverless rechnet pro Million Requests ab (ca. 0,25 Euro). Multi-Region verdoppelt die Kosten. Reserved Capacity (1-3 Jahre) spart bis zu 65%. Nutzen Sie den Azure Pricing Calculator für exakte Berechnungen basierend auf Ihrem Workload.

Ist die MongoDB API vollständig kompatibel?

Die MongoDB API unterstützt Wire Protocol Version 4.0 und 4.2 mit den meisten Features: CRUD-Operationen, Aggregation Pipeline, Indexing, Transaktionen. Einschränkungen: Keine Server-Side JavaScript, limitierte Geo-Queries, einige Aggregation-Operatoren fehlen. Migrations-Tools wie Azure Database Migration Service erleichtern den Umzug. Testen Sie Ihre spezifische Anwendung vor Production-Migration, da Edge Cases existieren können.

Wie funktioniert der Change Feed?

Change Feed ist ein persistenter Log aller Änderungen in Ihrem Container in chronologischer Reihenfolge. Jede Create- und Update-Operation wird erfasst (Deletes nur mit All Versions Mode). Nutzen Sie Azure Functions, Logic Apps oder eigene Consumer für Event-Driven Architekturen: Echtzeit-Synchronisation, Materialized Views, Event Sourcing, Stream Analytics. Change Feed speichert Änderungen für die TTL-Dauer Ihres Containers.

Serverless oder Provisioned Throughput?

Serverless eignet sich für sporadische Workloads, Dev/Test, Prototypen und Apps mit unvorhersehbarem Traffic. Limitierungen: Max 50 GB Storage, max 5.000 RU/s, Cold-Start-Latenz. Provisioned (manuell oder Autoscale) ist für Production-Systeme gedacht: Unbegrenzter Storage, vorhersehbare Kosten, niedrigere Latenz. Break-Even liegt bei ca. 100 RU/s Dauerlast. Autoscale kombiniert Flexibilität mit Kostenkontrolle und passt RU/s automatisch zwischen 10% und 100% an.

Was kostet Multi-Region-Replikation?

Jede zusätzliche Read-Region verdoppelt die Storage-Kosten, Throughput bleibt gleich. Multi-Region Writes (Active-Active) verdoppelt die RU/s-Kosten pro Region. Beispiel: 1.000 RU/s in einer Region = 5,50 Euro. Mit 3 Read-Regionen: Storage x3, RU/s gleich. Mit 3 Write-Regionen: Storage x3, RU/s x3. Network Egress zwischen Regionen kommt hinzu (ca. 0,05 Euro/GB). Für read-heavy Workloads reichen read-only Replicas.

Wie funktioniert Backup und Point-in-Time Restore?

Cosmos DB bietet zwei Backup-Modi: Periodic (alle 4 Stunden, kostenlos, Retention 8 Stunden bis 30 Tage) und Continuous (PITR, kostenpflichtig, Restore auf beliebige Sekunde der letzten 30 Tage). Continuous Backup kostet ca. 20% der Storage-Kosten zusätzlich. Restore erfolgt in einen neuen Container, nicht in-place. Geo-Redundante Backups schützen vor Region-Ausfall. Testen Sie Restore-Prozeduren regelmäßig.

Ist Azure Cosmos DB DSGVO-konform?

Ja, wenn Sie europäische Azure-Regionen wählen (West Europe, North Europe, Germany West Central). Microsoft bietet Data Processing Addendum (DPA) und Standard Contractual Clauses (SCC). Sie kontrollieren Data Residency durch Region-Wahl. Encryption at Rest und in Transit ist Standard. Customer-Managed Keys (CMK) für zusätzliche Kontrolle. Audit Logs über Azure Monitor für Compliance-Nachweise. Achten Sie darauf, keine Multi-Region-Replikation außerhalb der EU zu aktivieren.

Wie integriert sich Cosmos DB mit anderen Azure-Services?

Native Integration über Managed Identities eliminiert Secrets-Management. Azure Functions triggern auf Change Feed. Logic Apps für No-Code-Workflows. Synapse Link für Analytics ohne ETL. Azure Search indiziert Cosmos-Daten. Event Grid für Event-Driven Architekturen. Azure Monitor für Observability. Terraform und Bicep für Infrastructure as Code. SDKs für .NET, Java, Python, Node.js, Go.

Integration mit innFactory

Als Microsoft Azure Partner unterstützt innFactory Sie bei der Integration und Optimierung von Azure Cosmos DB. Wir helfen bei Architektur, Migration, Betrieb und Kostenoptimierung.

Kontaktieren Sie uns für eine unverbindliche Beratung zu Azure Cosmos DB und Microsoft Azure.

Verfügbare Varianten & Optionen

Serverless

Stärken
  • Pay per request
  • Auto-scaling
  • No provisioning
Einschränkungen
  • Higher per-request cost
  • Max 50GB storage
  • Cold start latency

Typische Anwendungsfälle

Real-time personalization and recommendations
IoT and time-series data
Globally distributed web and mobile apps
Retail and e-commerce catalogs
Gaming leaderboards and session stores

Technische Spezifikationen

Apis NoSQL, MongoDB, Cassandra, Gremlin, Table, PostgreSQL
Backup Continuous backup and point-in-time restore (PITR)
Change feed Real-time change tracking for all operations
Consistency models Strong, Bounded Staleness, Session, Consistent Prefix, Eventual
Indexing Automatic indexing of all properties with customizable indexing policies
Latency <10ms read/write at P99
Modes Serverless or Provisioned (Manual/Autoscale)
Multi region Active-active multi-region writes with conflict resolution
Throughput Unlimited with partitioning

Häufig gestellte Fragen

What's the difference between Cosmos DB and DocumentDB?

Azure DocumentDB is now the MongoDB-compatible API for Cosmos DB. Cosmos DB is the evolution with multiple API support.

Can I migrate from MongoDB to Cosmos DB?

Yes, Cosmos DB offers native MongoDB API compatibility. Use Azure Database Migration Service for seamless migration.

Microsoft Solutions Partner

innFactory ist Microsoft Solutions Partner. Wir bieten Beratung, Implementierung und Managed Services für Azure.

Microsoft Solutions Partner Microsoft Data & AI

Bereit, mit Azure Cosmos DB - Azure Datenbanken zu starten?

Unsere zertifizierten Azure Experten helfen bei Architektur, Integration und Optimierung.

Beratung vereinbaren