Group By Keys
Group By Keys
El componente Group By Keys es una herramienta diseñada para organizar y consolidar tus datos. Imagina que tienes una lista larga de registros (como pedidos, visitas o eventos) y quieres juntar todos los que pertenecen a la misma categoría o entidad.
Esta función toma tus datos, los divide según los campos que elijas (por ejemplo, “País”, “Cliente” o “Fecha”), y crea un nuevo registro por cada grupo. En lugar de tener muchas filas repetidas, obtendrás una fila única por grupo donde los demás datos se almacenarán juntos en una lista.
Es ideal cuando necesitas tratar un grupo de registros como una sola unidad, sin necesidad de sumar valores ni hacer promedios, simplemente reuniendo la información.
¿Cómo funciona?
El proceso es intuitivo y se basa en tres pasos simples:
- Recepción: El componente toma tu tabla o conjunto de datos original.
- Agrupación: Tú le indicas qué campos (columnas) son los “identificadores” principales. Por ejemplo, si eliges el campo “País”, el sistema buscará todos los registros que tengan el mismo país.
- Consolidación: Para cada país encontrado, el sistema crea una nueva fila. Los otros campos (como nombres de productos o IDs de transacción) que no eran tu “identificador” principal, no se pierden; en su lugar, se juntan todos en una lista dentro de esa nueva fila.
Ejemplo visual: Si tienes una lista de ventas y agrupas por “Vendedor”:
- Antes: Vendedor Juan (Venta 1), Vendedor Juan (Venta 2), Vendedor Ana (Venta 3).
- Después: Vendedor Juan [Lista con Venta 1 y 2], Vendedor Ana [Lista con Venta 3].
Conexión y Credenciales
No se requiere ninguna configuración adicional ni credenciales para este componente. Funciona directamente con los datos que le conectes desde el flujo de trabajo.
Entradas
Para configurar el componente, deberás completar los siguientes campos:
Campos de Entrada
- Data: El conjunto de registros (tabla o lista de objetos) que deseas organizar. Cada registro debe contener los campos que seleccionarás como claves de agrupación.
- Group Key(s): Lista de nombres de campos por los cuales deseas agrupar los datos. Debes separar los nombres con comas (ejemplo:
country,cityoclient_id,date). Estos campos definirán la identidad de cada grupo. - Aggregated Field Name: El nombre que tendrá la columna o campo donde se almacenarán las listas con los datos consolidados. Si no lo especificas, el sistema usará un valor predeterminado.
Salidas
El componente produce un único resultado listo para ser utilizado en el siguiente paso de tu automatización.
- Grouped Data: Una estructura de datos transformada donde cada registro representa un grupo único definido por las claves que elegiste. Los campos originales se han convertido en listas que contienen todos los valores correspondientes a ese grupo.
Ejemplo de Respuesta JSON
El siguiente ejemplo muestra cómo se vería la salida si agrupaste datos de ventas por “Cliente”, consolidando los “Productos” en una lista: json [ { “client_id”: “C001”, “products”: [ “Laptop”, “Mouse”, “Teclado” ] }, { “client_id”: “C002”, “products”: [ “Monitor”, “Webcam” ] } ]
En este ejemplo, el campo products es una lista que contiene todos los artículos comprados por ese cliente específico.
Conectividad
Este componente actúa como un nodo de transformación en medio de tu flujo.
- Conexión de Entrada: Debe recibir datos de componentes previos como HTTP Requests, Database Queries, Get Records o File Readers que proporcionen una lista de objetos o tablas.
- Conexión de Salida: Su salida (Grouped Data) es ideal para alimentar componentes que necesiten procesar listas, como:
- Send Email (enviar un reporte por email).
- LLM / Prompt (para analizar los datos consolidados).
- Create Record (para guardar el resumen en una base de datos).
- HTTP (para enviar datos agregados a otra API).
Ejemplo de Uso
Escenario: Tienes una lista de 100 visitas a una página web y quieres obtener un resumen de cuántas visitas hubo por cada navegador de usuario.
- Conectas la salida de tu componente Webhook o Database (que contiene las 100 visitas) a la entrada Data.
- En Group Key(s), escribes
browser_name. - El componente agrupa todos los registros que usan “Chrome”, todos los que usan “Safari”, etc.
- La salida te dará una lista donde cada fila es un navegador y contiene una lista con todos los detalles de las visitas de ese navegador.
Consideraciones de Seguridad
Asegúrate de que los datos que estás agrupando no contengan información sensible que no debas exponer en los campos de las listas resultantes. Este componente no filtra contenido, solo organiza: todo lo que ingrese en las listas de salida será visible para el siguiente componente en tu flujo.