Sdílet prostřednictvím


Dotazování dat s využitím knihovny Python Azure Data Exploreru

V tomto článku se dotazujete na data pomocí Azure Data Exploreru. Azure Data Explorer je rychlá a vysoce škálovatelná služba pro zkoumání dat protokolů a telemetrie.

Azure Data Explorer poskytuje datovou klientskou knihovnu pro Python. Pomocí této knihovny můžete data dotazovat z kódu. Připojte se k tabulce v clusteru nápovědy, který jsme nastavili, abychom se mohli učit. Můžete dotazovat tabulku v daném clusteru a vrátit výsledky.

Požadavky

Instalace datové knihovny

Nainstalujte azure-kusto-data.

pip install azure-kusto-data

Přidání příkazů pro import a konstant

Naimportujte z knihovny třídy a pandas, což je knihovna pro analýzu dat.

from azure.kusto.data import KustoClient, KustoConnectionStringBuilder
from azure.kusto.data.exceptions import KustoServiceError
from azure.kusto.data.helpers import dataframe_from_result_table
import pandas as pd

K ověření aplikace používá Azure Data Explorer VAŠE ID tenanta Microsoft Entra. ID tenanta zjistíte pomocí následující adresy URL, ve které YourDomain nahradíte svou doménou.

https://login.microsoftonline.com/<YourDomain>/.well-known/openid-configuration/

Pokud je vaše doména například contoso.com, je adresa URL https://login.microsoftonline.com/contoso.com/.well-known/openid-configuration/. Kliknutím na tuto adresu URL zobrazte výsledky. První řádek vypadá jako v následujícím příkladu.

"authorization_endpoint":"https://login.microsoftonline.com/6babcaad-604b-40ac-a9d7-9fd97c0b779f/oauth2/authorize"

V tomto případě je ID tenanta 6babcaad-604b-40ac-a9d7-9fd97c0b779f. Před spuštěním tohoto kódu nastavte hodnotu AAD_TENANT_ID.

AAD_TENANT_ID = "<TenantId>"
KUSTO_CLUSTER = "https://help.kusto.windows.net/"
KUSTO_DATABASE = "Samples"

Teď sestavte připojovací řetězec. V tomto příkladu se pro přístup ke clusteru používá ověřování pomocí zařízení. Můžete také použít certifikát aplikace Microsoft Entra, klíč aplikace Microsoft Entra a uživatele a heslo Microsoft Entra.

KCSB = KustoConnectionStringBuilder.with_aad_device_authentication(
    KUSTO_CLUSTER)
KCSB.authority_id = AAD_TENANT_ID

Připojení k Azure Data Exploreru a spuštění dotazu

Spusťte dotaz vůči clusteru a uložte výstup do datového rámce. Když se tento kód spustí, vrátí podobnou zprávu: Pokud se chcete přihlásit, otevřete ve webovém prohlížeči stránku https://microsoft.com/devicelogin a zadejte kód F3W4VWZDM k ověření. Podle pokynů se přihlaste a pak se vraťte a spusťte další blok kódu.

KUSTO_CLIENT = KustoClient(KCSB)
KUSTO_QUERY = "StormEvents | sort by StartTime desc | take 10"

RESPONSE = KUSTO_CLIENT.execute(KUSTO_DATABASE, KUSTO_QUERY)

Zkoumání dat v datovém rámci

Po přihlášení vrátí tento dotaz výsledky, které jsou uložené v datovém rámci. S výsledky můžete pracovat stejně jako s jakýmkoli jiným datovým rámcem.

df = dataframe_from_result_table(RESPONSE.primary_results[0])
df

Měli byste vidět prvních deset výsledků z tabulky StormEvents.

Další krok