App braucht NoSQL weltweit? Cosmos-DB-Konto erstellen
Eine Shopping-App speichert Produkte mit unterschiedlichen Eigenschaften: Bücher haben Autoren, Kleidung hat Größen. Nutzen Menschen in mehreren Ländern die App, verursachen Zugriffe auf eine weit entfernte Datenbank zusätzliche Wartezeit. Azure Cosmos DB for NoSQL speichert flexible JSON-Dokumente und kann sie in Regionen nahe den Nutzern replizieren. Dieser Trip erstellt das Konto und testet die Dokumentablage in West US 2; weitere Regionen lassen sich anschließend konfigurieren.
Konto erstellen
Öffne im Azure-Portal Azure Cosmos DB → Create → Azure Cosmos DB for NoSQL:
Resource group: rg-cloudtrips-cosmos-test-eus (neu)
Account name: cosmos-ctappeus (global eindeutig)
Location: West US 2
Capacity mode: Provisioned throughput
Apply free tier discount: Apply, falls verfügbar
Availability zones: Disable
Der Free Tier steht für ein Konto pro Abonnement zur Verfügung und muss beim Erstellen gewählt werden. Verwende für die Übung eine Region und prüfe die angezeigten Kosten. Wähle Public endpoint (all networks) für diese Portal-Übung, behalte die Standardkonsistenz Session und wähle Review + create → Create. Datenzugriffe benötigen weiterhin eine Autorisierung; für den Produktivbetrieb lassen sich die zugelassenen Netzwerke einschränken.
Öffne nach der Bereitstellung Overview des Kontos.

Prüfe Kontoname, API und Region. Das Konto stellt den Endpunkt bereit, über den Anwendungen auf seine Datenbanken zugreifen.
Container erstellen
Öffne Data Explorer → New Container:
Database id: appdb (Create new)
Container id: products
Partition key: /category
Container throughput: Autoscale
Container Max RU/s: 1000
Falls Share throughput across containers erscheint, lasse es deaktiviert. Erstelle den Container mit OK.

Prüfe products, /category und den Durchsatz. Ein Container enthält Dokumente; der Partitionsschlüssel gruppiert sie anhand einer Eigenschaft, damit Cosmos DB Daten und Arbeit verteilen kann. Produkte derselben Kategorie teilen hier eine logische Partition. Wähle für einen großen Katalog einen Schlüssel mit vielen gleichmäßig verteilten Werten. Request Units (RU) messen den Aufwand einer Operation; RU/s beschreibt die Durchsatzkapazität, die Autoscale bis zum eingestellten Maximum anpasst.
Produkt speichern und abfragen
Öffne products → Items → New Item, ersetze den Editorinhalt durch dieses Dokument und wähle Save:
{
"id": "product-1",
"category": "stationery",
"name": "Notebook",
"price": 12.50
}
Die Zeichenfolge id identifiziert das Element innerhalb seiner Partition; category liefert den Partitionsschlüsselwert. Wähle New SQL Query und führe diese Abfrage aus:
SELECT c.id, c.name, c.price
FROM c
WHERE c.category = 'stationery'

Erwarte ein Element: product-1, Notebook und 12.5. JSON kann 12.50 als 12.5 anzeigen. Damit ist bestätigt, dass das Dokument gespeichert und abfragbar ist. Die SQL-ähnliche Abfrage arbeitet auf den JSON-Dokumenten dieses Containers.
Aufräumen
Behalte das Konto für den nächsten Cosmos-DB-Trip oder lösche rg-cloudtrips-cosmos-test-eus. Bereitgestellte Kapazität kann auch im Leerlauf Kosten verursachen, wenn sie die geltende Free-Tier-Freimenge überschreitet.