Dados de consulta utilizando a biblioteca Python do Explorador de Dados AzureQuery data using the Azure Data Explorer Python library

Neste artigo, consulta dados através do Azure Data Explorer.In this article, you query data using the Azure Data Explorer. O Azure Data Explorer é um serviço de exploração de dados rápido e altamente dimensionável para dados telemétricos e de registo.Azure Data Explorer is a fast and highly scalable data exploration service for log and telemetry data.

O Azure Data Explorer fornece uma biblioteca de cliente de dados ao Python.Azure Data Explorer provides a data client library for Python. Esta biblioteca permite-lhe consultar dados a partir do código.This library enables you to query data from your code. Ligue-se a uma tabela sobre o aglomerado de ajuda que estabelecemos para ajudar a aprendizagem.Connect to a table on the help cluster that we have set up to aid learning. Pode consultar uma mesa nesse cluster e devolver os resultados.You can query a table on that cluster and return the results.

Este artigo também está disponível como um Caderno Azure.This article is also available as an Azure Notebook.

Pré-requisitosPrerequisites

  • Python 3.4+Python 3.4+

  • Uma conta de e-mail organizacional que seja membro do Azure Active Directory (AAD)An organizational email account that is a member of Azure Active Directory (AAD)

Instalar a biblioteca de dadosInstall the data library

Instale azure-kusto-data.Install azure-kusto-data.

pip install azure-kusto-data

Adicionar declarações e constantes de importaçãoAdd import statements and constants

Importe classes de biblioteca, bem como o pandas, uma biblioteca de análise de dados.Import classes from the library, as well as pandas, a data analysis library.

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

Para autenticar uma aplicação, o Azure Data Explorer utiliza o ID de inquilino do AAD.To authenticate an application, Azure Data Explorer uses your AAD tenant ID. Para localizar o ID de inquilino, utilize o seguinte URL, substituindo o domínio pelo SeuDomínio.To find your tenant ID, use the following URL, substituting your domain for YourDomain.

https://login.windows.net/<YourDomain>/.well-known/openid-configuration/

Por exemplo, se o seu domínio for contoso.com, o URL é: https://login.windows.net/contoso.com/.well-known/openid-configuration/.For example, if your domain is contoso.com, the URL is: https://login.windows.net/contoso.com/.well-known/openid-configuration/. Clique neste URL para ver os resultados; a primeira linha é igual à seguinte.Click this URL to see the results; the first line is as follows.

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

Neste caso, o ID de inquilino é 6babcaad-604b-40ac-a9d7-9fd97c0b779f.The tenant ID in this case is 6babcaad-604b-40ac-a9d7-9fd97c0b779f. Defina o valor para AAD_TENANT_ID antes de executar este código.Set the value for AAD_TENANT_ID before running this code.

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

Agora construa a cadeia de ligação.Now construct the connection string. Este exemplo utiliza a autenticação do dispositivo para aceder ao cluster.This example uses device authentication to access the cluster. Também pode utilizar o certificado de aplicação AAD, a chave de aplicação AAD,e o utilizador e a palavra-passe da AAD.You can also use AAD application certificate, AAD application key, and AAD user and password.

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

Ligar ao Azure Data Explorer e executar uma consultaConnect to Azure Data Explorer and execute a query

Executar uma consulta contra o cluster e armazenar o resultado num pacote de dados.Execute a query against the cluster and store the output in a data frame. Quando este código é executado, devolve uma mensagem semelhante à seguinte: Para iniciar sessão, utilize um browser para abrir a página https://microsoft.com/devicelogin e introduza o código F3W4VWZDM para autenticar.When this code runs, it returns a message like the following: To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code F3W4VWZDM to authenticate. Siga os passos para iniciar sessão e volte para executar o bloco de código seguinte.Follow the steps to sign-in, then return to run the next code block.

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

RESPONSE = KUSTO_CLIENT.execute(KUSTO_DATABASE, KUSTO_QUERY)

Explorar dados em DataFrameExplore data in DataFrame

Depois de introduzir um início de sessão, a consulta devolve resultados e estes são armazenados num pacote de dados.After you enter a sign in, the query returns results, and they are stored in a data frame. Pode trabalhar com os resultados, tal como faz com qualquer outro pacote de dados.You can work with the results like you do any other data frame.

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

Deve ver os dez principais resultados da tabela StormEvents.You should see the top ten results from the StormEvents table.

Passos seguintesNext steps