Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Se aplica a: ✅Microsoft Fabric✅Azure Data Explorer
Puede insertar código de Python en Lenguaje de consulta Kusto consultas mediante el complemento python(). El entorno de ejecución del complemento se hospeda en un espacio aislado, un entorno de Python aislado y seguro. La funcionalidad del complemento python() amplía Lenguaje de consulta Kusto funcionalidades nativas con el enorme archivo de paquetes de Python del sistema operativo. Esta extensión permite ejecutar algoritmos avanzados —tales como aprendizaje automático, inteligencia artificial, estadística y serie temporal— como parte de la consulta.
Lenguaje de consulta Kusto herramientas no son cómodas para desarrollar y depurar algoritmos de Python. Por lo tanto, desarrolle el algoritmo en su entorno de desarrollo integrado de Python favorito, como Jupyter, PyCharm, Visual Studio o Visual Studio Code. Una vez completado el algoritmo, lo copia y lo pega en KQL. Para mejorar y simplificar este flujo de trabajo, los clientes de Kusto Explorer o interfaz de usuario web se pueden integrar con Visual Studio Code para crear y depurar código de Python insertado de KQL.
Nota:
Este flujo de trabajo solo se puede usar para depurar tablas de entrada relativamente pequeñas (unos pocos MB). Por lo tanto, puede que necesite limitar la entrada para la depuración. Si necesita procesar una tabla grande, limítela para depuración mediante | take
, | sample
o where rand() < 0.x
.
Requisitos previos
- Suscripción a Azure. Cree una cuenta de Azure gratuita.
- Un clúster y la base de datos de Azure Data Explorer. Cree un clúster y una base de datos.
- Instale la distribución Anaconda de Python. En Advanced Options (Opciones avanzadas), seleccione Add Anaconda to my PATH environment variable (Agregar Anaconda a mi variable de entorno PATH).
- Instale Visual Studio Code.
- Instale la extensión de Python para Visual Studio Code.
- Habilite el complemento de Python. Para más información, consulte Administración de extensiones de lenguaje en el clúster de Azure Data Explorer.
- Un área de trabajo con una capacidad habilitada para Microsoft Fabric.
- Una base de datos. Cree una base de datos KQL.
- Instale la distribución Anaconda de Python. En Advanced Options (Opciones avanzadas), seleccione Add Anaconda to my PATH environment variable (Agregar Anaconda a mi variable de entorno PATH).
- Instale Visual Studio Code.
- Instale la extensión de Python para Visual Studio Code.
- Habilite el complemento de Python.
Habilitación de la depuración de Python en Visual Studio Code
En la aplicación cliente, incluya
set query_python_debug;
como prefijo en las consultas que contengan Python insertado.Ejecute la consulta.
- Explorador de Kusto: Visual Studio Code se inicia automáticamente con el script debug_python.py .
- Interfaz de usuario web de Kusto:
- Descargue y guarde debug_python.py, df.txt y kargs.txt. En la ventana, seleccione Permitir. Guarde los archivos en el directorio seleccionado.
- Haga clic con el botón derecho en debug_python.py y abra con Visual Studio Code. El script debug_python.py contiene el código de Python insertado, procedente de la consulta de KQL, con el prefijo del código de plantilla para inicializar el dataframe de entrada de df.txt y el diccionario de parámetros de kargs.txt.
En Visual Studio Code, inicie el depurador de Visual Studio Code: Ejecutar depuración>inicial (F5) y seleccione Configuración de Python. El depurador inicia y establece automáticamente un punto de interrupción para depurar el código insertado.
En la aplicación cliente, incluya
set query_python_debug;
como prefijo en las consultas que contengan Python insertado.Ejecute la consulta.
- Explorador de Kusto: Visual Studio Code se inicia automáticamente con el script debug_python.py .
- Conjunto de consultas KQL:
- Descargue y guarde debug_python.py, df.txt y kargs.txt. En la ventana, seleccione Permitir. Guarde los archivos en el directorio seleccionado.
- Haga clic con el botón derecho en debug_python.py y abra con Visual Studio Code. El script debug_python.py contiene el código de Python insertado, procedente de la consulta de KQL, con el prefijo del código de plantilla para inicializar el dataframe de entrada de df.txt y el diccionario de parámetros de kargs.txt.
En Visual Studio Code, inicie el depurador de Visual Studio Code: Ejecutar depuración>inicial (F5) y seleccione Configuración de Python. El depurador inicia y establece automáticamente un punto de interrupción para depurar el código insertado.
¿Cómo funciona la depuración insertada de Python en Visual Studio Code?
- La consulta se analiza y se ejecuta en el servidor hasta que se alcanza la cláusula
| evaluate python()
requerida. - Se invoca el espacio aislado de Python pero, en lugar de ejecutar el código, se serializa la tabla de entrada, el diccionario de parámetros y el código, y se devuelven al cliente.
- Estos tres objetos se guardan en tres archivos: df.txt, kargs.txt y debug_python.py en el directorio seleccionado (interfaz de usuario web) o en el directorio % TEMP% del cliente (Kusto Explorer).
- Visual Studio Code se inicia, precargado con el archivo debug_python.py que contiene un código de prefijo para inicializar df y kargs de sus respectivos archivos, seguido del script de Python incrustado en la consulta KQL.
Ejemplo de consulta
Ejecute la siguiente consulta de KQL en la aplicación 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))
Vea la tabla resultante:
x x4 1 1 2 16 3 81 4 256 Ejecute la misma consulta de KQL en la aplicación cliente con
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))
Visual Studio Code se inicia:
Visual Studio Code depura e imprime la trama de datos "result" en la consola de depuración:
Nota:
Puede haber diferencias entre la imagen del espacio aislado de Python y la instalación local. Compruebe la imagen del espacio aislado de paquetes específicos consultando el complemento.
Nota:
En caso de que haya errores al iniciar la sesión de depuración de Visual Studio Code, pruebe a establecer el perfil de terminal predeterminado en el símbolo del sistema:
- Presione CTRL + MAYÚS + P para abrir la paleta de comandos.
- Busque "Terminal: Seleccionar perfil predeterminado" y seleccione "Símbolo del sistema"