Tutorial: Erstellen eines Jupyter Notebooks zum Analysieren von Daten in Ihrem Azure Cosmos DB for NoSQL-Konto mithilfe von Visual Studio Code Jupyter-Notebooks
GILT FÜR: NoSQL
In diesem Tutorial wird die Verwendung der Visual Studio Code Jupyter-Notebooks für die Interaktion mit Ihrem Azure Cosmos DB for NoSQL-Konto erläutert. Sie erfahren, wie Sie eine Verbindung mit Ihrem Konto herstellen, Daten importieren und Abfragen ausführen.
Voraussetzungen
- Ein vorhandenes Azure Cosmos DB for NoSQL-Konto
- Falls Sie bereits über ein vorhandenes Azure-Abonnement verfügen, erstellen Sie ein neues Konto.
- Kein Azure-Abonnement? Sie können Azure Cosmos DB kostenlos testen, ohne dass eine Kreditkarte erforderlich ist.
- Installieren Sie Visual Studio Code und richten Sie Ihre Umgebung so ein, dass Notebooks verwendet werden.
Erstellen eines neuen Notebooks
In diesem Abschnitt erstellen Sie die Azure Cosmos-Datenbank sowie den Container und importieren die Einzelhandelsdaten in den Container.
- Öffnen Sie Visual Studio Code.
- Führen Sie den Befehl Erstellen: Neues Jupyter Notebook aus der Befehlspalette (Strg+Umschalt+P) aus, oder erstellen Sie eine neue IPYNB-Datei in Ihrem Arbeitsbereich.
Tipp
Nachdem das neue Notebook erstellt wurde, können Sie es speichern und ihm einen Namen wie z. B. AnalyzeRetailData.ipynb geben.
Erstellen einer Datenbank und eines Containers mit dem SDK
Beginnen Sie in der Standardcodezelle.
Installieren Sie das Azure.cosmos-Paket. Führen Sie diese Zelle aus, bevor Sie fortfahren.
%pip install azure.cosmos
Importieren Sie alle Pakete, die Sie für dieses Tutorial benötigen.
import azure.cosmos from azure.cosmos.partition_key import PartitionKey from azure.cosmos import CosmosClient
Erstellen Sie eine neue Instanz von CosmosClient.
endpoint = "<FILL ME>" key = "<FILL ME>" cosmos_client = CosmosClient(url=endpoint, credential=key)
Erstellen Sie mit dem integrierten SDK eine Datenbank namens RetailIngest.
database = cosmos_client.create_database_if_not_exists('RetailIngest')
Erstellen Sie einen Container namens WebsiteMetrics mit einem Partitionsschlüssel von
/CartID
.container = database.create_container_if_not_exists(id='WebsiteMetrics', partition_key=PartitionKey(path='/CartID'))
Wählen Sie Ausführen aus, um die Datenbank und die Containerressource zu erstellen.
Importieren von Daten in einen Container
Fügen Sie eine neue Codezelle hinzu
Fügen Sie in der Codezelle den folgenden Code hinzu, um Daten aus dieser URL hochzuladen:
<https://cosmosnotebooksdata.blob.core.windows.net/notebookdata/websiteData.json>
.import urllib.request import json with urllib.request.urlopen("https://cosmosnotebooksdata.blob.core.windows.net/notebookdata/websiteData.json") as url: docs = json.loads(url.read().decode()) for doc in docs: container.upsert_item(doc)
Führen Sie die Zelle aus. Dies dauert 45 Sekunden bis 1 Minute.
Analysieren der Daten
Erstellen Sie eine weitere neue Codezelle.
Verwenden Sie in der Codezelle eine SQL-Abfrage, um einen Pandas DataFrame zu erstellen. Führen Sie diese Zelle aus.
import pandas as pd from pandas import DataFrame QUERY = "SELECT c.Action, c.Price as ItemRevenue, c.Country, c.Item FROM c" results = container.query_items( query=QUERY, enable_cross_partition_query=True ) df_cosmos = pd.DataFrame(results)
Erstellen Sie eine weitere neue Codezelle.
Geben Sie in der Codezelle die oberen 10 Dataframe-Elemente aus. Führen Sie diese Zelle aus.
df_cosmos.head(10)
Beobachten Sie die Ausgabe der Befehlsausführung.
Aktion ItemRevenue Land Element 0 Erworben 19.99 Nordmazedonien Button-Up Shirt 1 Angezeigt 12.00 Papua-Neuguinea Necklace 2 Angezeigt 25.00 Slowakei (Slowakei) Cardigan Sweater 3 Erworben 14.00 Senegal Flip Flop Shoes 4 Angezeigt 50,00 Panama Denim Shorts 5 Angezeigt 14.00 Senegal Flip Flop Shoes 6 Hinzugefügt 14.00 Senegal Flip Flop Shoes 7 Hinzugefügt 50,00 Panama Denim Shorts 8 Erworben 33,00 Palästinensische Gebiete Red Top 9 Angezeigt 30,00 Malta Green Sweater Erstellen Sie eine weitere neue Codezelle.
Importieren Sie in der Codezelle das pandas-Paket, um die Dataframe-Ausgabe anzupassen. Führen Sie diese Zelle aus.
import pandas as pd df_cosmos.groupby("Item").size().reset_index()
Beobachten Sie die Ausgabe der Befehlsausführung.
Artikel Test 0 Flip Flop Shoes 66 1 Necklace 55 2 Sportschuhe 111 ... ... ... 45 Windjacke 56