Delen via


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 nieuwe notebook maken

In deze sectie maakt u de Azure Cosmos-database, -container en importeert u de retailgegevens in de container.

  1. Open Visual Studio Code.
  2. 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

  1. Begin in de standaardcodecel.

  2. Installeer het Azure.cosmos-pakket. Voer deze cel uit voordat u doorgaat.

    %pip install azure.cosmos
    
  3. 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
    
  4. Maak een nieuw exemplaar van CosmosClient.

    endpoint = "<FILL ME>"
    key = "<FILL ME>"
    cosmos_client = CosmosClient(url=endpoint, credential=key)
    
  5. Maak een database met de naam RetailIngest met behulp van de ingebouwde SDK.

    database = cosmos_client.create_database_if_not_exists('RetailIngest')
    
  6. 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'))
    
  7. Selecteer Uitvoeren om de database en containerresource te maken.

    Schermopname van de cel Execute in Visual Studio Code Jupyter Notebook.

Gegevens importeren in container

  1. Een nieuwe codecel toevoegen

  2. 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)
    
  3. Voer de cel uit. Dit duurt 45 seconden tot 1 minuut om uit te voeren.

Uw gegevens analyseren

  1. Maak nog een nieuwe codecel.

  2. 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)
    
  3. Maak nog een nieuwe codecel.

  4. Voer in de codecel de tien belangrijkste items uit het dataframe uit. Voer deze cel uit.

    df_cosmos.head(10)
    
  5. 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
  6. Maak nog een nieuwe codecel.

  7. 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()
    
  8. 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

Volgende stappen