Constructor de transformaciones

Construya transformaciones personalizadas de forma visual, previsualice resultados, valide flujos de trabajo y expórtelos para su ejecución.

circle-info

Próximamente.

Transformation Builder está actualmente en desarrollo. La descripción de la función en esta página refleja la funcionalidad planificada. Los detalles de implementación pueden evolucionar antes del lanzamiento final. Si está interesado en acceso anticipado o tiene preguntas, contacte a iotquery@navixy.comenvelope.

Qué es Transformation Builder

Transformation Builder es una herramienta visual para diseñar flujos de trabajo de transformación de datos sin necesidad de desarrollar y mantener canalizaciones de datos complejas. Usted ensambla la lógica de procesamiento como un grafo donde cada paso está representado por un bloque separado (nodo), y la herramienta compila su grafo en SQL ejecutable.

Transformation Builder está diseñado para analistas, especialistas en BI y cualquier persona con conocimientos básicos de SQL que desee controlar la lógica de preparación de datos de forma independiente. Le ayuda a responder las preguntas clave de la preparación de datos: de dónde provienen los datos, cómo se unen, qué filtros y transformaciones se aplican, cómo se agregan las series temporales y en qué forma deben aparecer los datos en la Capa de transformación.

Transformation Builder no es un orquestador ETL completo ni una plataforma de datos. Es un diseñador de flujos de trabajo enfocado que genera configuración y SQL para ejecución en tiempo de ejecución externa.

Cómo funciona

Un flujo de trabajo en Transformation Builder es un grafo dirigido de nodos ordenados desde las fuentes de datos hasta la salida:

workflow graph example showing sources, transformations, and output
Datos sin procesar → Nodos de transformación → Salida

Cada nodo corresponde a un paso lógico de procesamiento. Puede combinar múltiples fuentes en un nodo de transformación, y el resultado de un nodo puede alimentar varios nodos downstream. El grafo le ofrece una representación visual clara de toda la ruta de los datos desde las tablas de origen hasta la entidad analítica objetivo.

El Builder compila su grafo en una única consulta SQL usando Expresiones de Tabla Común (CTE). Cada nodo se convierte en una CTE en la consulta final. Este enfoque de compilación significa que el Builder no escribe datos directamente en la base de datos. En su lugar, genera configuración que ejecuta el procesamiento real de datos según un cronograma.

circle-exclamation

Conexión a la base de datos

Antes de comenzar a construir un flujo de trabajo, necesita conectarse a su base de datos PostgreSQL. Sin una conexión activa, la vista previa de datos y el descubrimiento de tablas no están disponibles.

El panel de conexión le permite especificar su URL de conexión, conectarse o desconectarse, y ver el número de tablas encontradas en cada categoría. El Builder utiliza dos esquemas en su base de datos:

  • raw_telematics_data para telemática y datos de sensores de dispositivos

  • raw_business_data para datos de referencia empresarial (vehículos, empleados, geocercas y entidades similares)

Una vez conectado, el Builder descubre automáticamente las tablas y columnas disponibles, que luego puede seleccionar al configurar nodos de origen de datos.

connection panel showing URL input and discovered table counts

Nodos de origen de datos

Los nodos de origen de datos definen de dónde lee su flujo de trabajo. Cada nodo de origen corresponde a una tabla en la capa de Datos sin procesar.

chevron-rightDatos sin procesar: Telemáticahashtag

Este nodo carga datos de series temporales desde el raw_telematics_data esquema.

Parámetro
Descripción

Nombre de tabla

Seleccione de la lista de tablas descubiertas cuando se conectó a la base de datos.

Columna de tiempo

La columna de marca temporal utilizada para ordenar y filtros basados en tiempo. Por defecto device_time.

Columnas

Lista de columnas específicas para incluir, o * para seleccionar todas las columnas.

Condición de filtro

SQL opcional WHERE condición aplicada directamente a la consulta de origen.

Ventana de tiempo en minutos

Límite de tiempo opcional (en minutos) para restringir la ventana de datos en SQL. Dejar vacío para sin límite.

Cada nodo Datos sin procesar: Telemática lee exactamente de una tabla. Para usar datos de múltiples tablas, agregue un nodo separado para cada tabla.

chevron-rightDatos sin procesar: Empresarialhashtag

Este nodo carga datos de referencia desde el raw_business_data esquema. Las tablas típicas incluyen objects, vehicles, devicesy sensor_description.

Parámetro
Descripción

Nombre de tabla

Seleccione de la lista de tablas empresariales descubiertas.

Columna clave

La columna clave para esta tabla (por ejemplo, object_id o sensor_id).

Columnas

Lista de columnas específicas para incluir, o * para seleccionar todas las columnas.

Los nodos Datos sin procesar: Empresarial se usan principalmente como la segunda entrada para el nodo SQL Transform, lo que le permite unir datos de referencia con series temporales de telemática.

Nodos de transformación

Los nodos de transformación definen qué sucede con sus datos después de cargarlos desde las fuentes. Cada tipo de transformación maneja un patrón de procesamiento específico.

chevron-rightSQL Transformhashtag

Combina datos de exactamente dos nodos de origen usando una JOIN operación SQL.

Parámetro
Descripción

Tipo de join

El tipo de unión: INNER, LEFT, RIGHTo FULL (unión externa completa).

Condición de join

La condición para emparejar filas entre las dos entradas (por ejemplo, coincidir en device_id).

Seleccionar columnas

Lista de columnas para incluir en la salida. Admite notación de prefijo como source.* para seleccionar todas las columnas de una entrada específica.

SQL Transform requiere exactamente dos entradas. Las entradas pueden ser cualquier combinación de nodos de origen de datos o salidas de otros nodos de transformación.

chevron-rightFiltrohashtag

Filtra datos por rango de tiempo y condiciones personalizadas. Todas las condiciones se ejecutan en la base de datos como parte de la cláusula WHERE (filtrado pushdown).

Parámetro
Descripción

Columna de tiempo

La columna de marca temporal a usar para el filtrado por tiempo. Por defecto device_time.

Inicio / fin del rango de tiempo

Límites de inicio y fin para el filtro de tiempo.

Condiciones dinámicas

Una lista de condiciones SQL combinadas con AND. Úselas para filtrado adicional más allá del rango de tiempo.

chevron-rightRe-muestreohashtag

Agrega datos de series temporales en intervalos de tiempo fijos. Esto es útil para convertir puntos de datos de alta frecuencia en estadísticas resumidas durante periodos regulares.

Parámetro
Descripción

Columna de tiempo

La columna de marca temporal a usar para el agrupamiento por intervalo. Por defecto device_time.

Intervalo

El intervalo de agregación: 1min, 5min, 15min, 1houro 1day.

Agrupar por

Columnas adicionales por las cuales agrupar (además del intervalo de tiempo).

Agregaciones

Una lista de pares columna-método que definen cómo se agrega cada columna. Métodos disponibles: avg, sum, min, max, first, last, count.

chevron-rightAritméticahashtag

Agrega o reemplaza columnas usando expresiones SQL. Use este nodo para crear columnas calculadas basadas en datos existentes.

Parámetro
Descripción

Expresiones

Una lista de definiciones de expresiones. Cada entrada incluye una columna de origen opcional, una expresión SQL y un alias de salida obligatorio.

Por ejemplo, para convertir un valor de velocidad, puede establecer la columna de origen en speed, la expresión a speed * 1.2, y el alias a speed_adjusted. El alias es obligatorio para cada expresión.

chevron-rightSQL personalizadohashtag

Proporciona una entrada SQL de forma libre para lógica compleja que los otros tipos de nodo no pueden expresar. Úselo cuando necesite control total sobre la consulta.

Parámetro
Descripción

SQL personalizado

Una SELECT consulta donde los nodos upstream son accesibles por sus alias CTE.

Los alias de los nodos de origen siguen el patrón a_<node_id> (por ejemplo, a_node_1, a_filter_1). Los identificadores de nodo se sanean a identificadores SQL válidos, con espacios y caracteres especiales reemplazados por guiones bajos.

Los nodos SQL personalizados aceptan una o dos entradas. Su consulta puede hacer referencia a las CTE correspondientes por sus alias.

Configuración de salida

chevron-rightSalidahashtag

El Salida nodo define cómo deben escribirse los resultados de su transformación en la Capa de transformación. Especifica los metadatos de la tabla objetivo que el runtime externo usa para almacenar los datos procesados.

Parámetro
Descripción

Nombre de tabla

El nombre de la tabla objetivo en la processed_custom_data esquema.

Columna de tiempo

La columna de marca temporal en los datos de salida (por ejemplo, device_time).

Particionar por

Una expresión de particionado para organizar los datos almacenados (por ejemplo, DATE(device_time)).

Clave primaria

Una lista de columnas que identifican de forma única cada fila (por ejemplo, [device_id, device_time]).

Modo de escritura

Cómo se escriben los datos en la tabla objetivo: append (agregar filas nuevas), overwrite (reemplazar datos existentes), u upsert (actualizar filas existentes, insertar nuevas).

Construcción de un flujo de trabajo

Un flujo de trabajo típico sigue estos pasos:

1

Abrir Transformation Builder

Inicie la interfaz de Transformation Builder.

2

Conectarse a su base de datos

Ingrese su URL de conexión PostgreSQL y establezca la conexión. El Builder descubre automáticamente las tablas y columnas disponibles.

3

Agregar nodos de origen de datos

Agregue un Datos sin procesar: Telemática nodo y seleccione la tabla y las columnas con las que desea trabajar. Si necesita datos de referencia (por ejemplo, detalles del vehículo o descripciones de sensores), agregue también un Datos sin procesar: Empresarial nodo.

4

Agregar nodos de transformación

Inserte los nodos de transformación que su flujo de trabajo requiera:

5

Configurar el nodo de Salida

Agregue un Salida nodo y establezca el nombre de la tabla objetivo, las columnas de clave primaria y el modo de escritura para su entidad analítica.

6

Conectar nodos

Dibuje aristas entre nodos para definir el flujo de datos. Conecte nodos de origen a nodos de transformación, y nodos de transformación al nodo de Salida. Los datos fluyen de izquierda a derecha, de las fuentes a la salida.

7

Revisar y corregir errores

Revise las pistas de validación para cualquier problema de configuración. Corrija errores en los parámetros de los nodos o en la estructura del grafo según sea necesario.

8

Vista previa de resultados

Haga clic en Ejecutar para ejecutar una vista previa de su flujo de trabajo. El Builder compila el grafo en SQL y lo ejecuta contra su base de datos, devolviendo hasta 100 filas para que pueda verificar la salida.

circle-info

Exportar

Puede exportar su flujo de trabajo completado como un archivo YAML para ejecución en runtime o para compartir con colegas. Consulte Referencia YAML de flujo de trabajo para detalles del formato.

9

Programar ejecución

Haga clic en Programar para abrir el cuadro de diálogo de configuración, donde puede determinar la hora exacta y la frecuencia de la ejecución del flujo de trabajo. En la hora fijada, una función en la base de datos activará el flujo de trabajo y guardará su resultado en la Capa de transformación.

completed workflow graph with all node types connected
Ejemplo completo de flujo de transformación

Vista previa de resultados

Después de hacer clic en Ejecutar en la barra de herramientas, el Builder compila su grafo de flujo de trabajo en una única consulta SQL con CTEs y la ejecuta contra la base de datos PostgreSQL conectada. Los resultados aparecen en el panel inferior.

En ejecución exitosa, el panel muestra:

  • Una tabla de resultados que muestra hasta 100 filas de datos de salida

  • La consulta SQL ejecutada (la consulta CTE completa generada por el compilador)

  • Recuento de filas, número de columnas y tiempo de ejecución

  • Opción para exportar el resultado a CSV

En error de ejecución, el panel muestra:

  • Un mensaje de error que describe qué salió mal

  • La consulta SQL ejecutada (si la compilación tuvo éxito)

  • Detalles del error de la base de datos (si el error ocurrió durante la ejecución de la consulta)

circle-exclamation
Results preview panel showing successful execution with result table and SQL
Resultado del flujo ejecutado

Validación y compilación

El Builder valida su flujo de trabajo en dos niveles.

  1. Validación del grafo verifica la estructura general de su flujo de trabajo. El grafo debe ser un grafo dirigido acíclico válido (DAG), lo que significa que los datos fluyen en una dirección sin ciclos. Si el Builder detecta un ciclo, devuelve un error y resalta los nodos afectados.

  2. Validación de nodos verifica la configuración de cada nodo individualmente. El Builder comprueba que los campos obligatorios estén completos, que las columnas referenciadas existan en la salida del nodo upstream y que los parámetros del nodo sean consistentes con su tipo (por ejemplo, SQL Transform debe tener exactamente dos entradas).

Durante la compilación, el Builder convierte su grafo en una única consulta SQL. Cada nodo se convierte en una CTE con el alias a_<node_id>. Los nodos se disponen en orden topológico para que cada CTE pueda hacer referencia a las salidas de sus nodos predecesores. Si la compilación falla debido a un error de configuración o una estructura de grafo inválida, el Builder devuelve los detalles del error junto con cualquier SQL parcial que haya podido generar.

Exportación

Exportación e importación YAML

Puede exportar un flujo de trabajo completado como un archivo YAML usando el Exportar botón en la barra de herramientas. El archivo exportado contiene la definición completa del flujo de trabajo en el formato de la versión 2, incluyendo todas las configuraciones de nodos, aristas del grafo y posiciones de diseño.

Para cargar un flujo de trabajo guardado previamente, use la Importar función y seleccione un .yaml o .yml archivo. Para la documentación completa del formato, consulte la Referencia YAML de flujo de trabajo.

Limitaciones actuales

Transformation Builder está actualmente en su lanzamiento inicial, y se aplican varias restricciones:

  • La vista previa requiere una conexión PostgreSQL activa. Sin conexión, no puede obtener una vista previa de los resultados. La vista previa está limitada a 100 filas.

  • El grafo debe estar libre de ciclos. Los datos fluyen en una sola dirección, de las fuentes a la salida.

  • No hay motor de ejecución integrado. El Builder genera configuración y SQL para ejecución en runtime externa. No procesa ni almacena datos por sí mismo.

  • Procesamiento por lotes solamente. El procesamiento de datos en streaming no es compatible.

Próximos pasos

Última actualización

¿Te fue útil?