Wann sollten Sie Azure Cosmos DB for NoSQL verwenden?
Azure Cosmos DB for NoSQL ist ein vollständig verwalteter NoSQL-Datenbankdienst für die Entwicklung moderner und KI-Apps. Er bietet garantierte Reaktionszeiten im einstelligen Millisekundenbereich, eine Verfügbarkeit von 99,999 Prozent und Vektordatenbankfunktionen, 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 flexiblen API- und Vektorindizierungs- und -suchfunktionen eignet sich Azure Cosmos DB for NoSQL gut für viele Arten und Größen von Anwendungen. Diese reichen vom sehr kleinen Maßstab bis hin zu Hochleistungsanwendungen mit globalen Ambitionen. Durch Geschwindigkeit und Flexibilität eignet sich Azure Cosmos DB for NoSQL hervorragend für Generative KI sowie Web-, Einzelhandels-, IoT-, Gaming- und mobile Anwendungen. Azure Cosmos DB for NoSQL eignet sich gut für Anwendungen, die Flexibilität, geringe Kosten, kurze Antwortzeiten und die Möglichkeit der Skalierung für hohe Volumen oder hohe Geschwindigkeit erfordern.
Generative KI
Anwendungen mit generativer KI können vielfältig und unvorhersehbar sein. Diese Workloads erfordern eine Datenbankplattform, die kosteneffizient, reaktionsfähig und skalierbar ist. Benutzer können Vektoren direkt in ihren Dokumenten mit herkömmlichen schemafreien Daten und hochdimensionalen Vektoren als andere Eigenschaften speichern. Diese Colocation von Daten und Vektoren ermöglicht eine effiziente Indizierung und Suche, da die Vektoren in derselben logischen Einheit wie die daten gespeichert werden, die sie darstellen. Vektoren und Daten zusammenzuhalten vereinfacht die Datenverwaltung, KI-Anwendungsarchitekturen und die Effizienz von vektorbasierten Vorgängen.
In diesem Beispiel vektorisiert die Kundschaft Transaktions- und Betriebsdaten, um sie für die Vektorsuche durch mehrere KI-Agents für Kundschaft zu verwenden. Der Änderungsfeed von Azure Cosmos DB wird verwendet, um die Aufnahme und Vektorisierung neuer oder aktualisierter Daten zu verarbeiten, sodass er in Quasi-Echtzeit für Benutzer verfügbar ist. Kundschaft, die mit diesen Agents interagiert, generiert Prompts und Vervollständigungen, die auch als Chatverlauf in Azure Comsos DB gespeichert und dafür verwendet werden, einen semantischen Cache für verbesserte Kosten und Leistung bereitzustellen.
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.
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.
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 erstellt Ihre Onlinestorefront mit Unterstützung für KI-Agents, um Benutzern eine umfassende Erfahrung zu bieten. 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.
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.