Manejo de Items y colecciones de datos
En n8n, los datos se procesan como ítems. Entender cómo n8n maneja estos ítems y las colecciones de datos es fundamental para construir automatizaciones eficientes. Esta lección explica la anatomía de un ítem y cómo los nodos interactúan con conjuntos de datos.

El Concepto de Ítem en n8n
Un ítem es la unidad fundamental de datos que fluye a través de un workflow de n8n. Cada ítem es un objeto JSON que contiene información específica. Cuando un nodo procesa datos, trabaja con uno o más de estos ítems, transformándolos o utilizándolos para realizar una acción.
Piense en un ítem como una "fila" en una hoja de cálculo o un "registro" en una base de datos. Cada ítem tiene sus propias propiedades (claves y valores) que lo distinguen. Por ejemplo, si un nodo recibe una lista de usuarios, cada usuario será un ítem individual con propiedades como nombre, correo y ID.
Procesamiento de Colecciones de Datos
n8n está diseñado para manejar colecciones de ítems de forma nativa. Esto significa que un nodo puede recibir múltiples ítems de un nodo anterior y procesarlos uno por uno o en conjunto, dependiendo de su configuración y funcionalidad.
Cuando un nodo de origen (como un Trigger o un HTTP Request que devuelve una lista) genera varios ítems, estos se pasan como una colección al siguiente nodo. El nodo receptor puede entonces:
- Procesar cada ítem individualmente: La mayoría de los nodos de acción operan sobre cada ítem de forma independiente. Por ejemplo, si tienes 10 ítems de correo electrónico, un nodo de envío de email enviará 10 correos distintos, uno por cada ítem.
- Procesar todos los ítems como un conjunto: Algunos nodos están diseñados para operar sobre la colección completa. Por ejemplo, un nodo que genera un archivo CSV podría tomar todos los ítems y combinarlos en un único archivo.
- Dividir o fusionar ítems: Nodos como el Split In Batches o Merge pueden alterar la estructura de la colección, dividiéndola en grupos más pequeños o combinando ítems de diferentes ramas.
Siempre verifique la sección 'Input' y 'Output' en la documentación de cada nodo. Esto indica si el nodo espera un solo ítem, una colección, o si puede generar múltiples ítems a partir de uno solo, lo cual es crítico para el diseño del flujo de datos.
Visualización de Items en el Editor
Después de ejecutar un workflow, el panel de ejecuciones (Execution Panel) y la vista de "Output" de cada nodo son herramientas clave para entender cómo los ítems fluyen y se transforman. Al seleccionar un nodo, verá la sección "Output" en la parte inferior de la pantalla.
Si un nodo ha procesado múltiples ítems, la sección "Output" mostrará un selector para navegar entre ellos. Cada ítem se presenta como un objeto JSON, permitiendo inspeccionar sus propiedades y valores.
[
{
"id": "user_001",
"name": "Juan Pérez",
"email": "[email protected]"
},
{
"id": "user_002",
"name": "María García",
"email": "[email protected]"
},
{
"id": "user_003",
"name": "Carlos López",
"email": "[email protected]"
}
]El ejemplo anterior muestra una colección de tres ítems. Cada objeto JSON dentro del arreglo es un ítem individual que el siguiente nodo en el workflow podría procesar.
Cómo los Nodos Afectan el Número de Items
Los nodos pueden cambiar el número de ítems que pasan a la siguiente etapa de varias maneras:
- Mantener el número de ítems: Muchos nodos de transformación (como Set, Code, o algunos de manipulación de texto) toman N ítems y producen N ítems, modificando solo el contenido de cada uno.
- Aumentar el número de ítems: Nodos como el Split In Batches o algunos nodos de integración que devuelven listas anidadas pueden tomar un ítem y generar múltiples ítems. Por ejemplo, un ítem con una lista de 5 elementos podría convertirse en 5 ítems separados.
- Disminuir el número de ítems: Nodos como el Merge, Aggregate, o algunos nodos de filtrado (IF, Filter) pueden reducir el número de ítems. Un Merge, por ejemplo, podría combinar 2 ítems en 1. Un filtro podría descartar ítems que no cumplen una condición.
- Crear nuevos ítems: Nodos como el Function Item o algunos nodos de creación de datos pueden generar ítems completamente nuevos, independientemente de la entrada.
Consideraciones de Rendimiento y Memoria
Manejar grandes colecciones de ítems puede tener implicaciones en el rendimiento y el uso de memoria de su instancia de n8n. Si un workflow procesa miles o millones de ítems, es crucial optimizar el flujo.
- Procesamiento por lotes (Batch Processing): Utilice el nodo Split In Batches para dividir grandes colecciones en grupos más pequeños. Esto reduce la presión sobre la memoria y permite que los nodos procesen datos en segmentos manejables, especialmente útil al interactuar con APIs que tienen límites de tasa.
- Filtrado temprano: Si es posible, filtre los ítems innecesarios lo antes posible en el workflow. Esto asegura que solo los datos relevantes continúen, reduciendo la carga de procesamiento en nodos posteriores.
- Eliminación de datos no utilizados: Utilice el nodo Set para eliminar propiedades de los ítems que no se usarán en etapas posteriores. Menos datos por ítem significa menos memoria consumida.
Aplicación Práctica: Inspección de Flujos de Datos
El lunes, al construir o depurar un workflow:
- Ejecute el workflow: Active el workflow manualmente o espere a un trigger.
- Inspeccione la salida de cada nodo: Haga clic en cada nodo en el lienzo y revise la sección "Output" en la parte inferior. Observe cuántos ítems se generaron y cuál es su estructura JSON. Si hay varios ítems, navegue entre ellos usando los selectores.
- Identifique cambios en el número de ítems: Preste atención a cómo el número de ítems cambia entre un nodo y el siguiente. Esto le indicará si un nodo está dividiendo, fusionando o filtrando datos. Si el número no es el esperado, revise la configuración del nodo.
- Utilice el nodo Split In Batches: Si un nodo de origen genera una colección muy grande (cientos o miles de ítems), inserte un nodo Split In Batches después para procesar los datos en grupos. Comience con un tamaño de lote pequeño (ej. 50-100 ítems) para observar su efecto.
No hay comentarios por ahora.