Procesamiento de datos de eventos con el editor del procesador de eventos
El editor del procesador de eventos es una experiencia sin código que le permite arrastrar y colocar para diseñar la lógica de procesamiento de datos de eventos. En este artículo se describe cómo usar el editor para diseñar la lógica de procesamiento.
Nota:
Si desea usar funcionalidades mejoradas que están en versión preliminar, seleccione Funcionalidades mejoradas en la parte superior. De lo contrario, seleccione Funcionalidades estándar. Para obtener información sobre las funcionalidades mejoradas que se encuentran en versión preliminar, vea Introducción a los flujos de eventos de Fabric.
Requisitos previos
Para empezar, debe completar los siguientes requisitos previos:
- Obtenga acceso a un área de trabajo Premium con los permisos Colaborador o superior donde se encuentra la secuencia de eventos.
Importante
Las funcionalidades mejoradas de flujos de eventos de Fabric se encuentran actualmente en versión preliminar.
Diseño del procesamiento de eventos con el editor
Para realizar operaciones de procesamiento de flujos en los flujos de datos mediante un editor sin código, siga estos pasos:
Seleccione Editar en la cinta de opciones si aún no está en el modo de edición. Asegúrese de que el nodo ascendente de las operaciones que están conectadas tiene un esquema.
Para insertar un operador de procesamiento de eventos entre el nodo de flujo y el destino en el modo de edición, puede utilizar uno de los dos métodos siguientes:
Inserte el operador directamente desde la línea de conexión. Mantenga el puntero sobre la línea de conexión y seleccione el botón +. Aparece un menú desplegable en la línea de conexión y puede seleccionar un operador en este menú.
Inserte el operador desde el menú o lienzo de la cinta de opciones.
Puede seleccionar un operador en el menú Eventos de transformación de la cinta de opciones.
Como alternativa, puede mantener el puntero sobre uno de los nodos y, a continuación, seleccionar el botón + si ha eliminado la línea de conexión. Aparece un menú desplegable junto a ese nodo y puede seleccionar un operador en este menú.
Después de insertar el operador, debe volver a conectar estos nodos. Mantenga el puntero sobre el borde izquierdo del nodo de flujo y, a continuación, seleccione y arrastre el círculo verde para conectarlo al nodo del operador Administrar campos. Siga el mismo proceso para conectar el nodo del operador Administrar campos al destino.
Seleccione el nodo del operador Administrar campos. En el panel de configuración Administrar campos, seleccione los campos que quiere generar. Si desea agregar todos los campos, seleccione Agregar todos los campos. También puede agregar un nuevo campo con las funciones integradas para agregar los datos del flujo ascendente. (Actualmente, las funciones integradas que se admiten son algunas funciones en Funciones de cadena, Funciones de fecha y hora, Funciones matemáticas. Para encontrarlas, busque en
built-in
).Después de configurar el operador Administrar campos, seleccione Actualizar para validar el resultado de la prueba generado por este operador.
Si tiene algún error de configuración, estos aparecen en la pestaña Errores de creación en el panel inferior.
Si el resultado de la prueba es correcto, seleccione Publicar para guardar la lógica de procesamiento de eventos y volver a la vista en directo.
Después de completar estos pasos, puede visualizar cómo el flujo de eventos inicia el streaming y el procesamiento de datos en la vista en vivo.
Editor de procesamiento de eventos
El editor del procesador de eventos (el lienzo en modo de edición) permite transformar los datos en varios destinos. Escriba el modo de edición para diseñar operaciones de procesamiento de flujos para los flujos de datos.
El modo de edición incluye un lienzo y un panel inferior donde puede hacer lo siguiente:
- Compilar la lógica de transformación de datos de eventos con arrastrar y colocar.
- Obtener una vista previa de los resultados de pruebas de cada uno de los nodos de procesamiento de principio a fin.
- Descubra los errores de creación dentro de los nodos de procesamiento.
Diseño del editor
- Menú Cinta y Lienzo (Numerado uno en la imagen): En este panel, puede diseñar su lógica de transformación de datos seleccionando un operador (del menú Transformar eventos) y conectando el flujo y los nodos de destino a través del nodo operador recién creado. Puede arrastrar y colocar líneas de conexión o seleccionar y eliminar conexiones.
- Panel de edición derecho (dos en la imagen): este panel permite configurar el nombre del flujo de vista o el nodo seleccionado.
- Panel inferior con pestañas de vista previa de datos y error de creación (tres en la imagen): en este panel, obtenga una vista previa de los resultados de pruebas de un nodo seleccionado con la pestaña Resultados de pruebas. La pestaña Errores de creación muestra cualquier configuración incompleta o incorrecta en los nodos de la operación.
Ejemplos y tipos de nodo admitidos
Estos son los tipos de destino que admiten agregar operadores antes de la ingesta:
- Lakehouse
- Base de datos KQL (Procesamiento de eventos antes de la ingesta)
- Secuencia derivada
Nota:
En el caso de los destinos que no admiten la adición del operador de ingesta previa, primero puede agregar una secuencia derivada como salida del operador. A continuación, anexe el destino previsto a esta secuencia derivada.
El procesador de eventos de Lakehouse y KQL Database (procesamiento de eventos antes de la ingesta) le permite procesar los datos antes de ingerirlos en el destino.
Requisitos previos
Para empezar, debe completar los siguientes requisitos previos:
- Obtenga acceso a un área de trabajo Premium con los permisos Colaborador o superior donde se encuentra la secuencia de eventos.
- Obtenga acceso a un área de trabajo Premium con lpermisos de Colaborador o superiores donde se encuentra el almacén de lago de datos o la base de datos KQL.
Diseño del procesamiento de eventos con el editor
Para diseñar el procesamiento de eventos con el editor del procesador de eventos:
Añada un destino de Lakehouse y escriba los parámetros necesarios en el panel derecho. (Consulte Incorporación y administración de un destino en un flujo de eventos para obtener instrucciones detalladas).
Seleccione Abrir procesador de eventos. Se abre la pantalla Editor de procesamiento de eventos.
En el lienzo del Editor de procesamiento de eventos, seleccione el nodo eventstream. Puede obtener una vista previa del esquema de datos o cambiar el tipo de datos en el panel Eventstream derecho.
Para insertar un operador de procesamiento de eventos entre este elemento eventstream y el destino en el editor del procesador de eventos, puede usar uno de los dos métodos siguientes:
Inserte el operador directamente desde la línea de conexión. Mantenga el puntero sobre la línea de conexión y seleccione el botón "+". Aparece un menú desplegable en la línea de conexión y puede seleccionar un operador en este menú.
Inserte el operador desde el menú o lienzo de la cinta de opciones.
Puede seleccionar un operador en el menú Operaciones de la cinta de opciones. Como alternativa, puede mantener el puntero sobre uno de los nodos y, a continuación, seleccionar el botón "+" si eliminó la línea de conexión. Aparece un menú desplegable junto a ese nodo y puede seleccionar un operador en este menú.
Por último, debe volver a conectar estos nodos. Mantenga el puntero sobre el borde izquierdo del nodo de flujo de eventos y, a continuación, seleccione y arrastre el círculo verde para conectarlo al nodo del operador Administrar campos. Siga el mismo proceso para conectar el nodo del operador Administrar campos al nodo del almacén de lago.
Seleccione el nodo del operador Administrar campos. En el panel de configuración Administrar campos, seleccione los campos que quiere generar. Si desea agregar todos los campos, seleccione Agregar todos los campos. También puede agregar un nuevo campo con las funciones integradas para agregar los datos del flujo ascendente. (Actualmente, las funciones integradas que se admiten son algunas funciones en Funciones de cadena, Funciones de fecha y hora, Funciones matemáticas. Para encontrarlas, busque en “integradas”).
Tras configurar el operador Administrar campos, seleccione Actualizar vista previa estática para obtener una vista previa de los datos que se generan con este operador.
Si tiene algún error de configuración, estos aparecen en la pestaña Error de creación en el panel inferior.
Si los datos de la vista previa son correctos, seleccione Listo para guardar la lógica de procesamiento de eventos y volver a la pantalla de configuración de destino de Lakehouse.
Seleccione Agregar para completar la creación del destino del almacén de lago de datos.
Editor de procesador de eventos
El Procesador de eventos le permite transformar los datos que va a ingerir en un destino de almacén de lago de datos. Al configurar el destino de almacén de lago de datos, encontrará la opción de Abrir procesador de eventos en medio de la pantalla de configuración de destino de Lakehouse .
Al seleccionar Abrir procesador de eventos, se inicia la pantalla Editor de procesamiento de eventos, donde puede definir la lógica de transformación de datos.
El editor del procesador de eventos incluye un lienzo y un panel inferior donde puede hacer lo siguiente:
- Compilar la lógica de transformación de datos de eventos con arrastrar y colocar.
- Obtener una vista previa de los datos de cada uno de los nodos de procesamiento de principio a fin.
- Descubra los errores de creación dentro de los nodos de procesamiento.
El diseño de pantalla es similar al editor principal. Consta de tres secciones, que se muestran en la imagen siguiente:
Lienzo con vista de diagrama: en este panel, puede diseñar la lógica de transformación de datos seleccionando un operador (en el menú Operaciones) y conectando el flujo de eventos y los nodos de destino a través del nodo de operador recién creado. Puede arrastrar y colocar líneas de conexión o seleccionar y eliminar conexiones.
Panel de edición derecho: este panel le permite configurar el nodo de operación seleccionado o ver el esquema de la secuencia de eventos y el destino.
Panel inferior con pestañas de vista previa de datos y error de creación: en este panel, obtenga una vista previa de los datos de un nodo seleccionado con la pestaña Vista previa de datos. La pestaña Errores de creación muestra cualquier configuración incompleta o incorrecta en los nodos de la operación.
Errores de creación
Los errores de creación hacen referencia a los errores que se producen en el editor del procesador de eventos debido a una configuración incompleta o incorrecta de los nodos de operación, lo que le ayuda a encontrar y corregir posibles problemas en el procesador de eventos.
Puede ver errores de creación en el panel inferior del editor del procesador de eventos. En el panel inferior se enumeran todos los errores de creación y cada uno tiene cuatro columnas:
- Id. de nodo: indica el identificador del nodo de operación donde se ha producido el error de creación.
- Tipo de nodo: indica el tipo del nodo de operación donde se ha producido el error de creación.
- Nivel: indica la gravedad del error de creación; hay dos niveles, Irrecuperable e Información. El error de creación de nivel irrecuperable significa que el procesador de eventos tiene problemas graves y no se puede guardar ni ejecutar. El error de creación de nivel de información significa que el procesador de eventos tiene algunas sugerencias que pueden ayudarle a optimizar o mejorar el procesador de eventos.
- Error: indica la información específica del error de creación, y se describe brevemente su causa y su impacto. Puede seleccionar la pestaña Mostrar detalles para ver los detalles.
Como Eventstream y KQL Database admiten diferentes tipos de datos, el proceso de conversión de tipos de datos puede generar errores de creación.
En la tabla siguiente se muestran los resultados de la conversión de tipos de datos de Eventstream a KQL Database. Las columnas representan los tipos de datos admitidos por Eventstream y las filas los de KQL Database. Las celdas indican los resultados de conversión, que pueden ser uno de los tres siguientes:
✔️ Indica una conversión correcta; no se generan errores ni advertencias.
❌ Indica una conversión imposible; se genera un error de creación irrecuperable. El mensaje de error es similar a: El tipo de datos "{1}" para la columna "{0}" no coincide con el tipo esperado "{2}" en la tabla KQL seleccionada y no se puede convertir automáticamente.
⚠️ Indica una conversión posible pero inexacta; se genera el error de creación de información. El mensaje de error es similar a: El tipo de datos "{1}" para la columna "{0}" no coincide exactamente con el tipo esperado "{2}" en la tabla KQL seleccionada. Se convierte automáticamente en "{2}".
string | bool | datetime | dinámico | guid | int | long | real | timespan | decimal | |
---|---|---|---|---|---|---|---|---|---|---|
Int64 | ❌ | ❌ | ❌ | ✔️ | ❌ | ⚠️ | ✔️ | ⚠️ | ❌ | ✔️ |
Double | ❌ | ❌ | ❌ | ✔️ | ❌ | ❌ | ❌ | ⚠️ | ❌ | ⚠️ |
String | ✔️ | ❌ | ❌ | ✔️ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
Datetime | ⚠️ | ❌ | ✔️ | ✔️ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
Registro | ⚠️ | ❌ | ❌ | ✔️ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
Matriz | ⚠️ | ❌ | ❌ | ✔️ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
Como puede ver en la tabla, algunas conversiones de tipos de datos se realizan correctamente, como las de cadena a cadena. Estas conversiones no generan ningún error de creación y no afectan al funcionamiento del procesador de eventos.
Algunas conversiones de tipos de datos son imposibles, como la de int a string. Estas conversiones generan errores de creación de nivel irrecuperable, lo que provoca que el procesador de eventos no pueda guardar nada. Debe cambiar el tipo de datos en Eventstream o en la tabla KQL para evitar estos errores.
Algunas conversiones de tipos de datos son posibles, pero no precisas, como la de int a real. Estas conversiones generan errores de creación de nivel de información, lo que indica la falta de coincidencia entre los tipos de datos y los resultados de la conversión automática. Estas conversiones pueden hacer que los datos pierdan precisión o estructura. Puede elegir si omitir estos errores, o bien modificar el tipo de datos en Eventstream o en la tabla de KQL para optimizar el procesador de eventos.
Operadores de transformación
El procesador de eventos proporciona 6 operadores, que puede usar para transformar los datos de eventos según sus necesidades empresariales.
Agregado
Use la transformación Agregado para calcular una agregación (Suma, Mínimo, Máximo o Promedio) cada vez que se produzca un nuevo evento durante un período de tiempo. Esta operación también permite cambiar el nombre de estas columnas calculadas, y filtrar o segmentar la agregación en función de otras dimensiones de los datos. Puede tener una o varias agregaciones en la misma transformación.
Expandir
Utilice la transformación Expandir matriz para crear una nueva fila por cada valor dentro de una matriz.
Filtra
Use la transformación Filtro para filtrar eventos en función del valor de un campo de la entrada. En función del tipo de datos (número o texto), la transformación mantiene los valores que coincidan con la condición seleccionada, como is null o is not null.
Agrupar por
Use la transformación Agrupar por para calcular agregaciones en todos los eventos dentro de un período de tiempo determinado. Puede agrupar por los valores en uno o varios campos. Es como la transformación Agregado que permite cambiar el nombre de las columnas, pero proporciona más opciones para la agregación e incluye opciones más complejas para las ventanas de tiempo. Al igual que Agregado, puede incluir más de una agregación por transformación.
Estas son las agregaciones disponibles en la transformación:
- Average
- Recuento
- Máxima
- Mínimo
- Percentil (continuo y discreto)
- Desviación estándar
- Sum
- Variance
En los escenarios de streaming en tiempo real, realizar operaciones en los datos contenidos en ventanas temporales es un patrón común. El procesador de eventos admite funciones de ventana, que se integran con el operador Agrupar por . Puede definirlo en la configuración de este operador.
Administrar campos
La transformación Administrar campos permite agregar, quitar o cambiar el tipo de datos, o el nombre de los campos procedentes de una entrada u otra transformación. Los valores del panel lateral le ofrecen la opción de agregar un nuevo campo si selecciona Agregar campo, agregar varios campos o agrega todos los campos a la vez.
También puede agregar un nuevo campo con las funciones integradas para agregar los datos del flujo ascendente. (Actualmente, las funciones integradas que se admiten son algunas de las Funciones de cadena, Funciones de fecha y hora y Funciones matemáticas).
En la tabla siguiente se muestran los resultados de cambiar el tipo de datos mediante administrar campos. Las columnas representan el tipo de datos original y las filas el tipo de datos de destino.
- Si hay un elemento ✔️ en la celda, significa que se puede convertir directamente y la opción de tipo de datos de destino se muestra en la lista desplegable.
- Si hay un elemento ❌ en la celda, significa que no se puede convertir y la opción de tipo de datos de destino no se muestra en la lista desplegable.
- Si hay un elemento ⚠️ en la celda, significa que se puede convertir, pero debe cumplir ciertas condiciones, por ejemplo que el formato de cadena debe cumplir los requisitos del tipo de datos de destino. Por ejemplo, al convertir de cadena a int, la cadena debe tener un formato entero válido, como
123
, noabc
.
Int64 | Double | Cadena | Datetime | Registro | Array | |
---|---|---|---|---|---|---|
Int64 | ✔️ | ✔️ | ✔️ | ❌ | ❌ | ❌ |
Double | ✔️ | ✔️ | ✔️ | ❌ | ❌ | ❌ |
String | ⚠️ | ⚠️ | ✔️ | ⚠️ | ❌ | ❌ |
Datetime | ❌ | ❌ | ✔️ | ✔️ | ❌ | ❌ |
Registro | ❌ | ❌ | ✔️ | ❌ | ✔️ | ❌ |
Matriz | ❌ | ❌ | ✔️ | ❌ | ❌ | ✔️ |
Unión
Use la transformación Unión para conectar dos o más nodos y agregar eventos que tengan campos compartidos (con el mismo nombre y tipo de datos) en una tabla. Los campos que no coincidan se descartan y no se incluyen en la salida.
Join
Use la transformación Combinación para combinar eventos de dos entradas en función de los pares de campo que seleccione. Si no selecciona un par de campos, la combinación se basa en el tiempo de forma predeterminada. El valor predeterminado hace que esta transformación sea diferente de una por lotes.
Al igual que con las combinaciones normales, tiene opciones para la lógica de combinación:
- Combinación interna: incluye solo los registros de ambas tablas donde coincide el par.
- Combinación externa izquierda: se incluyen todos los registros de la tabla izquierda (la primera) y solo los registros de la segunda que coincidan con el par de campos. Si no hay coincidencias, los campos de la segunda entrada están en blanco.