tinybirdco/tinybird

Formatos de archivo de Tinybird, reglas SQL, patrones de optimización y mejores prácticas para fuentes de datos, pipes, endpoints y vistas materializadas.

¿Qué es tinybird?

Este skill está diseñado para desarrolladores y equipos que trabajan con Tinybird, una plataforma de análisis de datos en tiempo real. Proporciona un conjunto de reglas, patrones y mejores prácticas para ayudarte a construir y optimizar fuentes de datos (datasources), tuberías de datos (pipes), endpoints de consulta y vistas materializadas de manera eficiente. Incluye guías sobre formatos de archivo soportados (CSV, NDJSON, Parquet), reglas SQL para escribir consultas limpias y eficientes, y patrones para optimizar el rendimiento como el uso de índices, estrategias de partición (time-based partitioning) y el manejo correcto de datos en tiempo real. Es útil tanto para usuarios nuevos que quieren estructurar archivos y SQL correctamente, como para usuarios avanzados que buscan evitar errores comunes y maximizar la velocidad de consulta. Este skill se aplica directamente en entornos como Claude Code, Cursor o Codex, donde puedes referenciar las instrucciones para generar código o configuraciones de Tinybird de forma consistente y siguiendo las mejores prácticas de la plataforma.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/tinybirdco/tinybird-agent-skills/tree/main/skills/tinybird

Installed? Explore more Productividad y colaboración skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

¿Qué hace tinybird?

Formatos de archivo de Tinybird, reglas SQL, patrones de optimización y mejores prácticas para fuentes de datos, pipes, endpoints y vistas materializadas.

Este skill proporciona pautas para trabajar con Tinybird de manera eficiente. A continuación se presentan las reglas y patrones clave.

Formatos de archivo

Tinybird soporta los siguientes formatos de archivo para la ingesta de datos:

  • CSV: Formato de valores separados por comas. Codificación UTF-8 recomendada.
  • NDJSON: Newline Delimited JSON. Cada línea debe ser un objeto JSON válido.
  • Parquet: Formato columnar binario. Ideal para grandes volúmenes de datos.

Buenas prácticas

  • Para archivos CSV, asegúrate de que la primera fila contenga los nombres de las columnas.
  • Para NDJSON, cada objeto JSON debe estar en una línea separada, sin saltos de línea internos.
  • Para Parquet, utiliza tipos de datos compatibles (ej. String, Int64, Float64, Timestamp).

Reglas SQL

Estilo y formato

  • Utiliza mayúsculas para las palabras clave SQL (SELECT, FROM, WHERE, JOIN, etc.).
  • Nombra las columnas con snake_case.
  • Evita el uso de SELECT * en pipes o endpoints; especifica siempre las columnas necesarias.
  • Usa alias (AS) claros para columnas y tablas.

Optimización

  • Aplica filtros (WHERE) lo antes posible para reducir la cantidad de datos procesados.
  • Prefiere LEFT JOIN sobre RIGHT JOIN y mantén la tabla más grande a la izquierda.
  • Utiliza funciones de ventana con cuidado, especialmente en conjuntos de datos grandes.
  • Para agregaciones, usa GROUP BY en columnas con baja cardinalidad primero.

Patrones de optimización

Fuentes de datos (Datasources)

  • Define un Engine adecuado: MergeTree para la mayoría de los casos, SummingMergeTree para agregaciones pre-calculadas.
  • Configura particiones basadas en tiempo (toDate(timestamp)) para mejorar el rendimiento de las consultas.
  • Establece un orden de ordenamiento (ORDER BY) que coincida con los filtros más comunes de tus consultas.

Pipes y Endpoints

  • Utiliza vistas materializadas para pre-agregar datos y evitar cálculos repetitivos en endpoints.
  • Para endpoints que reciben muchos parámetros, usa parámetros con tipo en lugar de interpolación de cadenas.
  • Considera el uso de caché en endpoints para consultas que no cambian frecuentemente.

Vistas materializadas (Materialized Views)

  • Las vistas materializadas se actualizan en tiempo real cuando se insertan nuevos datos en la fuente de origen.
  • Define la vista con un SELECT que incluya agregaciones y transformaciones necesarias.
  • Almacena los resultados en un nuevo datasource con su propio esquema y motor.

Mejores prácticas generales

  • Usa nombres descriptivos para datasources, pipes y vistas materializadas.
  • Documenta los pipes con comentarios SQL (--) para explicar transformaciones complejas.
  • Realiza pruebas de rendimiento antes de desplegar endpoints a producción.
  • Monitorea el uso de recursos (CPU, memoria) a través del panel de Tinybird.

Para más detalles, consulta la documentación oficial de Tinybird.

Skills relacionados