Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье вы узнаете, как запросить данные с помощью Azure Data Explorer. Azure Data Explorer — это быстрая и высокомасштабируемая служба для изучения данных журналов и телеметрии.
Обозреватель данных Azure предоставляет клиентскую библиотеку данных для Python. Эта библиотека позволяет выполнять запросы данных из кода. Подключитесь к таблице в кластере справки и запросите таблицу и верните результаты.
Необходимые компоненты
- Python версии 3.7 или выше
- Учетная запись Майкрософт или удостоверение пользователя Microsoft Entra для доступа к кластеру справки
Установка библиотеки данных
Установите библиотеку azure-kusto-data.
pip install azure-kusto-data
Добавление операторов и констант импорта
Импорт классов из библиотеки azure.kusto и pandasбиблиотеки анализа данных.
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
Для проверки подлинности приложения Azure Data Explorer использует идентификатор клиента Microsoft Entra. Чтобы найти идентификатор клиента, используйте следующий URL-адрес, заменив домен на имя_вашего_домена.
https://login.microsoftonline.com/<YourDomain>/.well-known/openid-configuration/
Например, если ваш домен называется contoso.com, URL-адрес будет следующим: https://login.microsoftonline.com/contoso.com/.well-known/openid-configuration/. Перейдите по этому URL-адресу и найдите authentication_endpoint в результатах.
"authorization_endpoint":"https://login.microsoftonline.com/6babcaad-604b-40ac-a9d7-9fd97c0b779f/oauth2/authorize"
В данном случае идентификатор клиента — aaaabbbb-0000-cccc-1111-dddd2222eeee. Перед выполнением этого кода задайте значение для AAD_TENANT_ID.
AAD_TENANT_ID = "<TenantId>"
KUSTO_CLUSTER = "https://help.kusto.windows.net/"
KUSTO_DATABASE = "Samples"
Создайте строку подключения. В этом примере используется проверка подлинности устройства для доступа к кластеру. Вы также можете использовать сертификат приложения Microsoft Entra, ключ приложения Microsoft Entra и пользователь Microsoft Entra и пароль.
KCSB = KustoConnectionStringBuilder.with_aad_device_authentication(
KUSTO_CLUSTER)
KCSB.authority_id = AAD_TENANT_ID
Подключение к обозревателю данных Azure и выполнение запроса
Выполните запрос к кластеру и сохраните выходные данных в кадр данных. При выполнении этого кода возвращается сообщение, например следующее: для входа в систему используйте веб-браузер, чтобы открыть страницу https://microsoft.com/devicelogin и ввести код F3W4VWZDM для проверки подлинности. Следуйте инструкциям по входу, а затем выполните следующий блок кода.
KUSTO_CLIENT = KustoClient(KCSB)
KUSTO_QUERY = "StormEvents | sort by StartTime desc | take 10"
RESPONSE = KUSTO_CLIENT.execute(KUSTO_DATABASE, KUSTO_QUERY)
Изучение данных в кадре данных
После входа запрос возвращает результаты и сохраняется в кадре данных. С результатами можно работать так же, как с любыми кадрами данных.
df = dataframe_from_result_table(RESPONSE.primary_results[0])
df
Вы увидите первые 10 результатов из таблицы StormEvents.