Kurz: Vytvoření poznámkového bloku Jupyter pro analýzu dat v účtu Azure Cosmos DB for NoSQL pomocí poznámkových bloků Jupyter editoru Visual Studio Code
PLATÍ PRO: NoSQL
Tento kurz vás provede používáním poznámkových bloků Jupyter v editoru Visual Studio Code k interakci s účtem Azure Cosmos DB for NoSQL. Uvidíte, jak se připojit ke svému účtu, importovat data a spouštět dotazy.
Požadavky
- Existující účet Azure Cosmos DB for NoSQL.
- Pokud máte existující předplatné Azure, vytvořte nový účet.
- Žádné předplatné Azure? Službu Azure Cosmos DB můžete vyzkoušet zdarma bez nutnosti platební karty.
- Nainstalujte Visual Studio Code a nastavte prostředí tak, aby používalo poznámkové bloky.
Vytvoření nového poznámkového bloku
V této části vytvoříte databázi Azure Cosmos, kontejner a importujete maloobchodní data do kontejneru.
- Otevřete Visual Studio Code.
- Spusťte příkaz Create: New Jupyter Notebook z palety příkazů (Ctrl+Shift+P) nebo vytvořte nový soubor .ipynb v pracovním prostoru.
Tip
Teď, když byl nový poznámkový blok vytvořen, můžete ho uložit a pojmenovat ho jako AnalyzeRetailData.ipynb.
Vytvoření databáze a kontejneru pomocí sady SDK
Začněte ve výchozí buňce kódu.
Nainstalujte balíček Azure.cosmos. Před pokračováním spusťte tuto buňku.
%pip install azure.cosmos
Importujte všechny balíčky, které pro účely tohoto kurzu potřebujete.
import azure.cosmos from azure.cosmos.partition_key import PartitionKey from azure.cosmos import CosmosClient
Vytvořte novou instanci CosmosClient.
endpoint = "<FILL ME>" key = "<FILL ME>" cosmos_client = CosmosClient(url=endpoint, credential=key)
Vytvořte databázi s názvem RetailIngest pomocí integrované sady SDK.
database = cosmos_client.create_database_if_not_exists('RetailIngest')
Vytvořte kontejner s názvem WebsiteMetrics s klíčem oddílu
/CartID
.container = database.create_container_if_not_exists(id='WebsiteMetrics', partition_key=PartitionKey(path='/CartID'))
Vyberte Spustit a vytvořte databázi a prostředek kontejneru.
Import dat do kontejneru
Přidání nové buňky kódu
Do buňky kódu přidejte následující kód pro nahrání dat z této adresy URL:
<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)
Spusťte buňku. Spuštění bude trvat 45 sekund až 1 minutu.
Analýza dat
Vytvořte další novou buňku kódu.
V buňce kódu použijte dotaz SQL k naplnění datového rámce Pandas. Spusťte tuto buňku.
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)
Vytvořte další novou buňku kódu.
V buňce kódu zadejte výstup prvních 10 položek z datového rámce. Spusťte tuto buňku.
df_cosmos.head(10)
Sledujte výstup spuštění příkazu.
Akce ItemRevenue Země Položka 0 Koupeno 19.99 Makedonie Tričko s tlačítkem 1 Zobrazeno 12,00 Papua-Nová Guinea Náhrdelník 2 Zobrazeno 25.00 Slovensko (Slovenská republika) Svetr s karganem 3 Koupeno 14,00 Senegal Flip Flop Boty 4 Zobrazeno 50.00 Panama Denim Shorts 5 Zobrazeno 14,00 Senegal Flip Flop Boty 6 Přidáno 14,00 Senegal Flip Flop Boty 7 Přidáno 50.00 Panama Denim Shorts 8 Koupeno 33,00 Palestinská území Červená nahoře 9 Zobrazeno 30.00 Malta Zelený svetr Vytvořte další novou buňku kódu.
V buňce kódu importujte balíček pandas a přizpůsobte výstup datového rámce. Spusťte tuto buňku.
import pandas as pd df_cosmos.groupby("Item").size().reset_index()
Sledujte výstup spuštění příkazu.
Položka Test 0 Flip Flop Boty 66 1 Náhrdelník 55 2 Sportovní boty 111 ... ... ... 45 Bunda windbreaker 56