Självstudie: Skapa en Jupyter Notebook för att analysera data i ditt Azure Cosmos DB for NoSQL-konto med hjälp av Visual Studio Code Jupyter Notebooks
GÄLLER FÖR: NoSQL
Den här självstudien beskriver hur du använder Visual Studio Code Jupyter-notebook-filer för att interagera med ditt Azure Cosmos DB för NoSQL-konto. Du ser hur du ansluter till ditt konto, importerar data och kör frågor.
Förutsättningar
- Ett befintligt Azure Cosmos DB för NoSQL-konto.
- Om du har en befintlig Azure-prenumeration skapar du ett nytt konto.
- Ingen Azure-prenumeration? Du kan prova Azure Cosmos DB kostnadsfritt utan kreditkort.
- Installera Visual Studio Code och konfigurera din miljö för att använda notebook-filer.
Skapa en ny notebook
I det här avsnittet skapar du Azure Cosmos-databasen, containern och importerar detaljhandelsdata till containern.
- Öppna Visual Studio Code.
- Kör kommandot Skapa: Ny Jupyter Notebook från kommandopaletten (Ctrl+Skift+P) eller skapa en ny .ipynb-fil på arbetsytan.
Dricks
Nu när den nya notebook-filen har skapats kan du spara den och ge den namnet AnalyzeRetailData.ipynb.
Skapa en databas och container med hjälp av SDK
Starta i standardkodcellen.
Installera Azure.cosmos-paketet. Kör den här cellen innan du fortsätter.
%pip install azure.cosmos
Importera alla paket som du behöver för den här självstudien.
import azure.cosmos from azure.cosmos.partition_key import PartitionKey from azure.cosmos import CosmosClient
Skapa en ny instans av CosmosClient.
endpoint = "<FILL ME>" key = "<FILL ME>" cosmos_client = CosmosClient(url=endpoint, credential=key)
Skapa en databas med namnet RetailIngest med hjälp av det inbyggda SDK:et.
database = cosmos_client.create_database_if_not_exists('RetailIngest')
Skapa en container med namnet WebsiteMetrics med partitionsnyckeln
/CartID
.container = database.create_container_if_not_exists(id='WebsiteMetrics', partition_key=PartitionKey(path='/CartID'))
Välj Kör för att skapa databasen och containerresursen.
Importera data till container
Lägga till en ny kodcell
I kodcellen lägger du till följande kod för att ladda upp data från den här URL:en:
<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)
Kör cellen. Det tar 45 sekunder till 1 minut att köra.
Analysera dina data
Skapa en ny kodcell.
I kodcellen använder du en SQL-fråga för att fylla i en Pandas DataFrame. Kör den här cellen.
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)
Skapa en ny kodcell.
I kodcellen matar du ut de 10 översta objekten från dataramen. Kör den här cellen.
df_cosmos.head(10)
Observera utdata från körningen av kommandot.
Åtgärd ItemRevenue Land Artikel 0 Inköpt 19.99 Makedonien Skjorta med knapp 1 Visat 12,00 Papua Nya Guinea Halsband 2 Visat 25,00 Slovakien (Slovakien) Kofta tröja 3 Inköpt 14,00 Senegal Flip Flop skor 4 Visat 50.00 Panama Jeansshorts 5 Visat 14,00 Senegal Flip Flop skor 6 Tillagd 14,00 Senegal Flip Flop skor 7 Tillagd 50.00 Panama Jeansshorts 8 Inköpt 33,00 Palestinska territoriet, PS Röd överkant 9 Visat 30,00 Malta Grön tröja Skapa en ny kodcell.
Importera Pandas-paketet i kodcellen för att anpassa dataramens utdata. Kör den här cellen.
import pandas as pd df_cosmos.groupby("Item").size().reset_index()
Observera utdata från körningen av kommandot.
Artikel Test 0 Flip Flop skor 66 1 Halsband 55 2 Atletiska skor 111 ... ... ... 45 Vindbrytarjacka 56