Zelfstudie: Een Jupyter Notebook maken om gegevens te analyseren in uw Azure Cosmos DB for NoSQL-account met behulp van Visual Studio Code Jupyter-notebooks
VAN TOEPASSING OP: NoSQL
In deze zelfstudie wordt uitgelegd hoe u de Visual Studio Code Jupyter-notebooks gebruikt om te communiceren met uw Azure Cosmos DB for NoSQL-account. U ziet hoe u verbinding maakt met uw account, gegevens importeert en query's uitvoert.
Vereisten
- Een bestaand Azure Cosmos DB for NoSQL-account.
- Als u een bestaand Azure-abonnement hebt, maakt u een nieuw account.
- Geen Azure-abonnement? U kunt Azure Cosmos DB gratis proberen zonder dat er een creditcard is vereist.
- Installeer Visual Studio Code en stel uw omgeving in om notebooks te gebruiken.
Een nieuwe notebook maken
In deze sectie maakt u de Azure Cosmos-database, -container en importeert u de retailgegevens in de container.
- Open Visual Studio Code.
- Voer de opdracht Create: New Jupyter Notebook uit vanuit het opdrachtpalet (Ctrl+Shift+P) of maak een nieuw .ipynb-bestand in uw werkruimte.
Tip
Nu het nieuwe notitieblok is gemaakt, kunt u het opslaan en een naam opgeven zoals AnalyzeRetailData.ipynb.
Een database en container maken met behulp van de SDK
Begin in de standaardcodecel.
Installeer het Azure.cosmos-pakket. Voer deze cel uit voordat u doorgaat.
%pip install azure.cosmos
Importeer alle pakketten die u nodig hebt voor deze zelfstudie.
import azure.cosmos from azure.cosmos.partition_key import PartitionKey from azure.cosmos import CosmosClient
Maak een nieuw exemplaar van CosmosClient.
endpoint = "<FILL ME>" key = "<FILL ME>" cosmos_client = CosmosClient(url=endpoint, credential=key)
Maak een database met de naam RetailIngest met behulp van de ingebouwde SDK.
database = cosmos_client.create_database_if_not_exists('RetailIngest')
Maak een container met de naam WebsiteMetrics met een partitiesleutel van
/CartID
.container = database.create_container_if_not_exists(id='WebsiteMetrics', partition_key=PartitionKey(path='/CartID'))
Selecteer Uitvoeren om de database en containerresource te maken.
Gegevens importeren in container
Een nieuwe codecel toevoegen
Voeg in de codecel de volgende code toe om gegevens uit deze URL te uploaden:
<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)
Voer de cel uit. Dit duurt 45 seconden tot 1 minuut om uit te voeren.
Uw gegevens analyseren
Maak nog een nieuwe codecel.
Gebruik in de codecel een SQL-query om een Pandas DataFrame te vullen. Voer deze cel uit.
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)
Maak nog een nieuwe codecel.
Voer in de codecel de tien belangrijkste items uit het dataframe uit. Voer deze cel uit.
df_cosmos.head(10)
Bekijk de uitvoer van het uitvoeren van de opdracht.
Actie ItemRevenue Land/regio Artikel 0 Ingekocht 19.99 Macedoniƫ Button-Up Shirt 1 Weergegeven 12,00 Papoea-Nieuw-Guinea Halssnoer 2 Weergegeven 25.00 Slowakije (Slowaakse Republiek) Vest trui 3 Ingekocht 14,00 Senegal Flop schoenen spiegelen 4 Weergegeven 50.00 Panama Denim Shorts 5 Weergegeven 14,00 Senegal Flop schoenen spiegelen 6 Toegevoegd 14,00 Senegal Flop schoenen spiegelen 7 Toegevoegd 50.00 Panama Denim Shorts 8 Ingekocht 33,00 Palestijnse gebieden Rode bovenkant 9 Weergegeven 30,00 Malta Groene trui Maak nog een nieuwe codecel.
Importeer in de codecel het pandas-pakket om de uitvoer van het dataframe aan te passen. Voer deze cel uit.
import pandas as pd df_cosmos.groupby("Item").size().reset_index()
Bekijk de uitvoer van het uitvoeren van de opdracht.
Artikel Testen 0 Flop schoenen spiegelen 66 1 Halssnoer 55 2 Sportschoenen 111 ... ... ... 45 Windbreaker jas 56