Wann sollten Sie Azure Cosmos DB for NoSQL verwenden?

Abgeschlossen

Azure Cosmos DB for NoSQL ist ein vollständig verwalteter NoSQL-Datenbankdienst für die Entwicklung moderner Apps. Der Dienst bietet garantierte Reaktionszeiten im einstelligen Millisekundenbereich und eine Verfügbarkeit von 99,999 Prozent, unterstützt durch SLAs mit automatischer und sofortiger Skalierbarkeit.

In Unternehmensszenarios bietet Azure Cosmos DB for NoSQL eine umfassende Sammlung finanziell abgesicherter SLAs (Service Level Agreements, Vereinbarungen zum Servicelevel), die Durchsatz, Konsistenz, Verfügbarkeit und Latenz abdecken.

Gängige Anwendungsfälle für Azure Cosmos DB for NoSQL

Als schnelle NoSQL-Datenbank mit flexibler API ist Azure Cosmos DB for NoSQL ideal geeignet für Hochleistungsanwendungen mit gewünschter globaler Reichweite. Durch Geschwindigkeit und Flexibilität eignet sich Azure Cosmos DB for NoSQL hervorragend für Web-, Einzelhandels-, IoT-, Gaming- und mobile Anwendungen. Azure Cosmos DB for NoSQL eignet sich gut für Anwendungen, die Flexibilität, kurze Antwortzeiten und Transaktionen mit hohem Volumen oder hoher Geschwindigkeit erfordern.

IoT/Telemetrie

IoT-Sensorworkloads können eine vielfältige und unvorhersehbare Natur aufweisen. Für diese Workloads ist eine Datenbankplattform erforderlich, die reaktionsfähig ist und elastisch skaliert werden kann, um die Anforderungen so vieler, oder so weniger, Datensammlungsgeräte zu erfüllen, die zu einem jeweiligen Zeitpunkt bereitgestellt sind. In vielen Fällen können IoT-Workloads auch erhebliche Datenvolumen schreiben und würden von einer schreiboptimierten Datenbankplattform profitieren. Azure Cosmos DB for NoSQL ist für schreibintensive Workloads optimiert. Vorgänge für ein einzelnes Dokument sind atomisch und weisen schnelle und vorhersagbare indizierte Schreibgeschwindigkeiten auf. Azure Cosmos DB for NoSQL ist auch global verteilt und so elastisch, dass die Anforderungen verschiedener IoT-Workloads erfüllt werden können.

Architectural diagram for an IoT workload showing increasing numbers of IoT device sensors sending data to an Azure IoT Hub. Azure Databricks then ingests and aggregates the real-time data in JSON format for storage in Azure Cosmos DB. Finally, Azure Synapse Analytics is used to perform a deeper analysis of the data stored in Azure Cosmos DB.

In diesem Beispiel sendet eine wachsende Anzahl an IoT-Geräten Sensordaten an eine Azure IoT Hub-Instanz. Azure Stream Analytics erfasst und aggregiert die Daten dann für die Speicherung in Azure Cosmos DB for NoSQL. Azure Synapse Analytics führt anschließend eine Analyse der Daten in Quasi-Echtzeit mit Azure Synapse Link für Azure Cosmos DB durch.

Einzelhandel/Marketing

Azure Cosmos DB for NoSQL eignet sich ideal für Einzelhandels- und Marketingworkloads, deren Nutzung zu beliebigen Zeitpunkten während eines Jahres erheblich und unerwartet schwanken kann. Die elastische Skalierung von Azure Cosmos DB for NoSQL sorgt dafür, dass die Datenbankplattform Anforderungen während Spitzenauslastungszeiten verarbeiten kann, und ansonsten Geld gespart wird.

Architectural diagram for a retail workload showing a user browser connecting to the website on Azure App Service supported by an Azure Blob Storage account containing static site data. Behind the scenes, an Azure Cosmos DB for NoSQL account with a container for inventory data and a container for shopping cart data is used by the App Service Web App and an Azure Search instance that builds a searchable catalog by indexing the Azure Cosmos DB for NoSQL account with inventory data.

In diesem Beispiel verwendet eine JavaScript-Webanwendung, die auf Grundlage von in Azure Blob Storage gespeicherten Inhalten erstellt wurde, Azure Cosmos DB for NoSQL als Sicherungsdatenbank. Mehrere Konten werden verwendet, um verschiedene Aspekte der Lösung zu verwalten, z. B. den Warenkorb, den Bestand oder den Katalog. Die Lösung verwendet dann Azure Search, um die Azure Cosmos DB for NoSQL-Daten zu indizieren und Endbenutzern eine umfassende Sucherfahrung zu bieten.

Web und mobil

Viele moderne soziale Anwendungen erzeugen Unmengen von benutzergenerierten Inhalten, die sich in Menge, Form und Volumen stark unterscheiden. Azure Cosmos DB for NoSQL eignet sich ideal für diese Workloads, da diese API Daten in unterschiedlichen Schemas speichern kann. Die NoSQL-API eignet sich für Daten, die Schemas aufweisen können, die sich im Lauf der Zeit ändern oder weiterentwickeln, wenn sich Unternehmensprojekte auf neue Gebiete konzentrieren.

Architectural diagram for a web workload showing a user browser connecting to a URL that is connected to Azure Traffic Manager to determine the correct redirect destination. Then three Azure App Service instances in three Azure regions (North Europe, West US, East US) are connected to a globally distributed Azure Cosmos DB for NoSQL account.

In diesem Beispiel verwendet ein Benutzer eine URL, um über den Browser auf eine Website zuzugreifen. Die URL verweist auf Azure Traffic Manager. Die Azure Traffic Manager-Instanz wiederum verwendet einen integrierten Algorithmus, um zu bestimmen, an welchen Azure App Service-Endpunkt der Benutzer weitergeleitet werden soll. Da Azure Cosmos DB for NoSQL zur globalen Verteilung fähig ist, benötigen Sie nur ein Konto, das in mehrere Regionen repliziert wird.

Modulszenario

Denken Sie an das Szenario vom Anfang des Moduls:

Angenommen, Sie arbeiten als leitender Entwickler in einem Einzelhandelsunternehmen. Ihr Team entwickelt eine neue Onlinestorefront. Sie entwerfen die neue Storefront so, dass über verschiedene Geräte darauf zugegriffen werden kann, einschließlich Mobilgeräte. Das Team erwartet ein Nachfragehoch bei Veröffentlichung der Storefront und bei verschiedenen Verkaufsstarts anlässlich der Veröffentlichung.

Ein entscheidender Bestandteil für den Erfolg Ihres Stores ist die Möglichkeit, dass das Unternehmen Benutzer zu Lieferaktualisierungen unabhängig davon benachrichtigen kann, welches Gerät verwendet wird, z. B. um eine Bestellung zu tätigen. Ihr Team hat sich ein ausgereiftes System erarbeiten können, mit dem die Nachverfolgung des Status einer Bestellung im Detail verwaltet werden kann. Die enge Integration von Azure Cosmos DB in andere Azure-Dienste ermöglicht es Ihnen, Lösungen zu entwickeln, die Auftragsdaten in Azure Cosmos DB for NoSQL verwenden, um Benachrichtigungen an die mobilen Geräte Ihrer Benutzer zu senden. Die Benachrichtigungen informieren, wenn das Paket versandt wird oder zur Auslieferung ansteht.

Architectural diagram for a retail workload showing a growing number of users ordering products and a collection of compute resources handling requests from the storefront instances. Behind the compute resources, Azure Cosmos DB stores purchase data. Then, Azure Synapse Link connects Azure Cosmos DB to Azure Synapse Analytics for deeper analytics. Finally, Azure Functions, triggered off of change feed, processing data events that then trigger an Azure Logic Apps workflow to perform business operations such as notifying the user on their mobile device of new events.

Dieses Beispiel ähnelt dem Beispiel aus der Einführung dieses Moduls. Ihr Team hat sich für dieses Beispiel nun für Azure Cosmos DB for NoSQL als Datenbank entschieden. Nun kann Ihr Team Azure Synapse Link verwenden, um die Daten für eine detaillierte Analyse mit Azure Synapse Analytics aufzubereiten und zu aggregieren. Ihr Team kann auch Dienste wie Azure Functions verwenden, um auf Datenereignisse mit Azure Cosmos DB zu reagieren und dann einen Azure Logic Apps-Workflow auszulösen, der Benachrichtigungen an mobile Geräte sendet.