Compartir a través de


Procesamiento de eventos mediante un operador SQL (versión preliminar)

Un operador SQL (versión preliminar), también denominado editor de código SQL, es una nueva funcionalidad de transformación de datos en secuencias de eventos de Microsoft Fabric. Los operadores SQL proporcionan una experiencia de edición de código donde puede definir fácilmente su propia lógica de transformación de datos personalizada mediante expresiones SQL simples. En este artículo se describe cómo usar un operador SQL para transformaciones de datos en una secuencia de eventos.

Note

Los nombres de artefactos de eventstream que incluyen un carácter de subrayado (_) o punto (.) no son compatibles con los operadores SQL. Para obtener la mejor experiencia, cree una nueva secuencia de eventos sin usar caracteres de subrayado ni puntos en el nombre del artefacto.

Prerequisites

  • Acceso a un área de trabajo en el modo de licencia de capacidad de Fabric o el modo de licencia de prueba con permisos Colaborador o superior.

Adición de un operador SQL a una secuencia de eventos

Para realizar operaciones de procesamiento de flujos en los flujos de datos mediante un operador SQL, agregue un operador SQL a la secuencia de eventos mediante las instrucciones siguientes:

  1. Cree una nueva secuencia de eventos. A continuación, agregue un operador SQL a él mediante una de las siguientes opciones:

    • En la cinta de opciones, seleccione Transformar eventos y, a continuación, seleccione SQL.

      Captura de pantalla que muestra la selección de un operador SQL en el menú para transformar eventos.

    • En el lienzo, seleccione Transformar eventos o agregar destino y, a continuación, seleccione Código SQL.

      Captura de pantalla que muestra la selección de un operador SQL en la lista para transformar eventos en el lienzo.

  2. Se agrega un nuevo nodo SQL al flujo de eventos. Seleccione el icono de lápiz para continuar configurando el operador SQL.

    Captura de pantalla que muestra la selección del icono de lápiz en el nodo del operador SQL.

  3. En el panel Código SQL , especifique un nombre único para el nodo del operador SQL en el flujo de eventos.

  4. Edite la consulta en el área de consulta o seleccione Editar consulta para ingresar a la vista del editor de código en pantalla completa.

    Captura de pantalla que muestra el cuadro para escribir un nombre de operación y el botón para editar una consulta en el panel Código SQL.

  5. El modo de editor de código de pantalla completa incluye un panel del explorador de entrada/salida en el lado izquierdo. La sección del editor de código es ajustable, por lo que puede cambiar su tamaño según sus preferencias. La sección de vista previa de la parte inferior le permite ver los datos de entrada y el resultado de la prueba de la consulta.

    Captura de pantalla que muestra el editor completo de SQL.

  6. Seleccione el texto de la sección Salidas y escriba un nombre para el nodo de destino. El operador SQL admite todos los destinos de inteligencia de Real-Time, incluido un centro de eventos, lakehouse, activador o secuencia.

    Captura de pantalla que muestra el área Resultados con el botón de añadir seleccionado.

  7. Especifique un alias o un nombre para el destino de salida donde se escriben los datos procesados a través del operador SQL.

    Captura de pantalla que muestra el nombre de una salida.

  8. Agregue una consulta SQL para la transformación de datos necesaria.

    Una secuencia de eventos se basa en Azure Stream Analytics y admite la misma semántica de consulta del lenguaje de consulta de Stream Analytics. Para más información sobre la sintaxis y el uso, consulte Referencia del lenguaje de consulta de Azure Stream Analytics y Eventstream.

    Esta es la estructura de consulta básica:

    SELECT 
    
        column1, column2, ... 
    
    INTO 
    
        [output alias] 
    
    FROM 
    
        [input alias] 
    

    En este ejemplo de consulta se muestra la detección de temperaturas altas en una sala cada minuto:

    
        SELECT 
        System.Timestamp AS WindowEnd, 
        roomId, 
        AVG(temperature) AS AvgTemp 
    INTO 
        output 
    FROM 
        input 
    GROUP BY 
        roomId, 
        TumblingWindow(minute, 1) 
    HAVING 
        AVG(temperature) > 75 
    

    En este ejemplo de consulta se muestra una CASE instrucción para clasificar la temperatura:

    SELECT
        deviceId, 
        temperature, 
        CASE  
            WHEN temperature > 85 THEN 'High' 
            WHEN temperature BETWEEN 60 AND 85 THEN 'Normal' 
            ELSE 'Low' 
        END AS TempCategory 
    INTO 
        CategorizedTempOutput 
    FROM 
        SensorInput 
    
  9. En la cinta de opciones, use el comando Test query para validar la lógica de transformación. Los resultados de la consulta de prueba aparecen en la pestaña Resultado de la prueba .

    Captura de pantalla que muestra un resultado de prueba.

  10. Cuando finalice la prueba, seleccione Guardar en la cinta de opciones para volver al lienzo de eventstream.

    Captura de pantalla que muestra la cinta de opciones de una consulta, incluidos los comandos para probar la consulta y guardarla.

  11. En el panel Código SQL , si el botón Guardar está habilitado, selecciónelo para guardar la configuración.

    Captura de pantalla que muestra el panel Código SQL y el botón Guardar.

  12. Configura el destino.

    Captura de pantalla que muestra una secuencia de eventos completada.

Limitations

  • El operador SQL está diseñado para centralizar toda la lógica de transformación. Como resultado, no se puede usar junto con otros operadores integrados dentro de la misma ruta de procesamiento. Tampoco se admite el encadenamiento de varios operadores SQL en una sola ruta de acceso. Además, el operador SQL puede enviar datos de salida solo al nodo de destino de la topología.

  • Actualmente, la creación de topologías de eventstream solo se admite a través de la interfaz de usuario. La compatibilidad con la API REST para el operador SQL aún no está disponible.