Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Alterne entre serviços usando a lista suspensa Version. Saiba mais sobre navegação.
Aplica-se a: ✅ Microsoft Fabric ✅ Azure Data Explorer
Pode incorporar código Python em consultas da Kusto Query Language usando o plugin python(). O runtime do plugin aloja num sandbox, um ambiente Python isolado e seguro. A capacidade do plugin python() estende as funcionalidades nativas da Kusto Query Language com o enorme arquivo de pacotes OSS Python. Essa extensão permite executar algoritmos avançados, como aprendizado de máquina, inteligência artificial, estatística e séries temporais como parte da consulta.
As ferramentas Kusto Query Language não são convenientes para desenvolver e depurar algoritmos Python. Portanto, desenvolva o algoritmo em seu ambiente de desenvolvimento favorito integrado ao Python, como Jupyter, PyCharm, Visual Studio ou Visual Studio Code. Quando o algoritmo estiver completo, copie e cole no KQL. Para melhorar e simplificar esse fluxo de trabalho, os clientes Kusto Explorer ou Web UI podem se integrar ao Visual Studio Code para criar e depurar código Python inline KQL.
Observação
Esse fluxo de trabalho só pode ser usado para depurar tabelas de entrada relativamente pequenas (até alguns MB). Por isso, pode ser necessário limitar a entrada para depuração. Se precisares de processar uma tabela grande, limita-a para depuração usando | take, | sample, ou where rand() < 0.x.
Pré-requisitos
- Uma assinatura do Azure. Crie uma conta do Azure gratuita.
- Um cluster e um banco de dados do Azure Data Explorer. Crie um cluster e um banco de dados.
- Instale Python Anaconda Distribution. Em Opções avançadas, selecione Adicionar Anaconda à minha variável de ambiente PATH.
- Instalar o Visual Studio Code.
- Instale a extensão Python para Visual Studio Code.
- Habilite o plug-in Python. Para obter mais informações, consulte Gerenciar extensões de idioma em seu cluster do Azure Data Explorer.
- Um espaço de trabalho com uma capacidade ativada por Microsoft Fabric.
- Uma base de dados. Crie um banco de dados KQL.
- Instale Python Anaconda Distribution. Em Opções avançadas, selecione Adicionar Anaconda à minha variável de ambiente PATH.
- Instalar o Visual Studio Code.
- Instale a extensão Python para Visual Studio Code.
- Habilite o plug-in Python.
Habilitar depuração Python no Visual Studio Code
Em seu aplicativo cliente, prefixe uma consulta contendo Python embutido com
set query_python_debug;Executar a consulta.
- Kusto Explorer: Visual Studio Code é iniciado automaticamente com o script debug_python.py .
- Kusto Web UI:
- Transfira e guarde debug_python.py, df.txte kargs.txt. Na janela, selecione Permitir. Salve os arquivos no diretório selecionado.
- Clique com o botão direito do mouse em debug_python.py e abra com o Visual Studio Code. O script debug_python.py contém o código Python embutido, da consulta KQL, prefixado pelo código do modelo para inicializar o dataframe de entrada do df.txt e o dicionário de parâmetros do kargs.txt.
No Visual Studio Code, inicie o depurador de código do Visual Studio: Run>Start Debugging (F5), selecione Configuração do Python . O depurador é iniciado e define automaticamente um ponto de interrupção para depurar o código embutido.
Em seu aplicativo cliente, prefixe uma consulta contendo Python embutido com
set query_python_debug;Executar a consulta.
- Kusto Explorer: Visual Studio Code é iniciado automaticamente com o script debug_python.py .
- Conjunto de consultas KQL:
- Transfira e guarde debug_python.py, df.txte kargs.txt. Na janela, selecione Permitir. Salve os arquivos no diretório selecionado.
- Clique com o botão direito do mouse em debug_python.py e abra com o Visual Studio Code. O script debug_python.py contém o código Python embutido, da consulta KQL, prefixado pelo código do modelo para inicializar o dataframe de entrada do df.txt e o dicionário de parâmetros do kargs.txt.
No Visual Studio Code, inicie o depurador de código do Visual Studio: Run>Start Debugging (F5), selecione Configuração do Python . O depurador é iniciado e define automaticamente um ponto de interrupção para depurar o código embutido.
Como funciona a depuração embutida do Python no Visual Studio Code?
- A consulta é analisada e executada no servidor até que a cláusula necessária
| evaluate python()seja atingida. - A sandbox Python é invocada, mas em vez de executar o código, serializa a tabela de entrada, o dicionário de parâmetros e o código e os envia de volta para o cliente.
- Esses três objetos são salvos em três arquivos: df.txt, kargs.txte debug_python.py no diretório selecionado (Web UI) ou no diretório %TEMP% cliente (Kusto Explorer).
- O Visual Studio Code é iniciado, pré-carregado com o arquivo debug_python.py que contém um código de prefixo para inicializar df e kargs de seus respetivos arquivos, seguido pelo script Python incorporado na consulta KQL.
Exemplo de consulta
Execute a seguinte consulta KQL em seu aplicativo cliente:
range x from 1 to 4 step 1 | evaluate python(typeof(*, x4:int), 'exp = kargs["exp"]\n' 'result = df\n' 'result["x4"] = df["x"].pow(exp)\n' , bag_pack('exp', 4))Veja a tabela resultante:
x x4 1 1 2 16 3 81 4 256 Execute a mesma consulta KQL em seu aplicativo cliente usando
set query_python_debug;:set query_python_debug; range x from 1 to 4 step 1 | evaluate python(typeof(*, x4:int), 'exp = kargs["exp"]\n' 'result = df\n' 'result["x4"] = df["x"].pow(exp)\n' , bag_pack('exp', 4))O Visual Studio Code é iniciado:
O Visual Studio Code depura e imprime o dataframe 'result' no console de depuração:
Observação
Pode haver diferenças entre a imagem de sandbox do Python e sua instalação local. Verifique a imagem da sandbox para pacotes específicos consultando o plugin.
Observação
Caso haja erros ao iniciar a sessão de depuração do Visual Studio Code, tente definir o perfil de terminal padrão para o prompt de comando:
- Pressione CTRL + SHIFT + P para abrir a Paleta de comandos.
- Pesquise por "Terminal: Selecionar Perfil Padrão" e selecione "Prompt de Comando"