Detección automática de esquemas CSV para una ingestión ultrarrápida en ClickHouse con Parquet

Optimiza la ingestión de datos en ClickHouse con Parquet gracias a la detección automática de esquemas CSV, logrando una velocidad ultrarrápida. Descubre cómo esta herramienta facilita el procesamiento de grandes volúmenes de información de forma eficiente.

2 dic 2025 • 4 min read • Q2BSTUDIO Team

Detección automática de esquemas CSV para una ingestión ultrarrápida en ClickHouse con Parquet

Como ingeniero de datos repito constantemente una misma tarea: ingerir datos desde ficheros CSV. El problema no es solo cargar los datos, sino la ceremonia que la rodea. Cada vez que aparece una nueva fuente tengo que inspeccionar columnas, definir un esquema y escribir un script de carga. Y si el CSV tiene 100 columnas o tipos ambiguos la tarea se vuelve tediosa y proclive a errores. Buscaba una forma más rápida y fiable.

El objetivo fue crear un script en Node.js capaz de leer cualquier CSV sin conocer su estructura previa, detectar automáticamente el esquema incluyendo nombres de columnas y tipos, convertir el CSV a Parquet formato columnar eficiente, y dejar los datos listos para ingestarse en ClickHouse que funciona muy bien con Parquet.

Por qué Parquet y ClickHouse ClickHouse es una base de datos columnar de alto rendimiento diseñada para analítica OLAP. Apache Parquet es un formato de almacenamiento columnar que permite leer solo las columnas necesarias en cada consulta reduciendo I O y acelerando la ejecución. La combinación ofrece almacenamiento eficiente y analítica ultrarrápida.

Concepto general El flujo se divide en tres pasos: detección de esquema, transformación de datos y conversión a Parquet. Primero se analizan los encabezados y unas filas de muestra para inferir tipos como entero, número con coma flotante, booleano, fecha o cadena. Después se transforman las cadenas crudas del CSV a esos tipos detectados. Finalmente se escribe un fichero .parquet con el esquema y los datos transformados.

Herramientas En Node.js se pueden usar librerías maduras para cada parte, por ejemplo papaparse para parseo robusto de CSV y parquetjs para escribir archivos Parquet. El enfoque evita escribir manualmente un esquema por cada fuente y simplifica pipelines ETL repetitivos.

Detección de esquema La detección automática se basa en analizar los valores de muestra por columna y aplicar reglas sencillas: si todos los valores coinciden con true o false se marca booleano, si parsean a número se elige double o integer según contexto, si parsean como fecha se registra como fecha o como cadena si se prefiere tratar fechas como UTF8, y en caso contrario se asigna cadena. Este primer paso permite crear dinámicamente un ParquetSchema usable por parquetjs.

Transformación y conversión Con el esquema detectado se recorre todo el CSV, se castea cada valor al tipo inferido y se van escribiendo filas en el escritor Parquet. El resultado es un archivo columnar compacto y listo para ingestarse en ClickHouse. Este proceso reduce considerablemente el I O y acelera operaciones analíticas posteriores.

Ingesta en ClickHouse Crear una tabla con tipos coincidentes permite una ingesta directa desde Parquet. Por ejemplo una tabla simple podría definirse con columnas id Float64, first_name String, is_active Boolean, created_at String, balance Float64 y usar ENGINE MergeTree ORDER BY id. A continuación se puede importar el archivo Parquet con clickhouse client usando INSERT INTO tabla FORMAT Parquet redirigiendo el fichero. ClickHouse detecta el esquema del Parquet y carga los datos de forma eficiente.

Beneficios para empresas Automatizar la detección de esquema y convertir CSV a Parquet ahorra tiempo, reduce errores humanos y habilita cargas masivas rápidas en plataformas analíticas. Para organizaciones que requieren soluciones a medida este enfoque encaja con proyectos de aplicaciones a medida y software a medida, integrando capacidades de inteligencia de negocio y analítica con herramientas como power bi.

En Q2BSTUDIO somos una empresa de desarrollo de software y aplicaciones a medida especializada en inteligencia artificial, ciberseguridad y servicios cloud aws y azure. Diseñamos pipelines y soluciones ETL que combinan buenas prácticas de data engineering con servicios de software a medida y soluciones de inteligencia artificial para empresas. Nuestra experiencia incluye servicios de ciberseguridad, pentesting, implementación de agentes IA, soluciones ia para empresas y despliegue en entornos cloud como aws y azure, además de integraciones con plataformas de inteligencia de negocio y power bi.

Extensiones y producción Este proof of concept se puede ampliar con detección de tipos más robusta, manejo de valores nulos, normalización de fechas, validación de calidad de datos, particionado de Parquet para escalado y orquestación para incorporar a pipelines existentes. También es recomendable implementar logging, retries y pruebas de integridad al cargar en ClickHouse para ambientes de producción.

Si buscas acelerar tus procesos de ingestión masiva, modernizar tu arquitectura de datos o desarrollar una solución a medida que incluya inteligencia artificial, agentes IA, servicios de inteligencia de negocio o asegurar tus sistemas con ciberseguridad profesional, en Q2BSTUDIO podemos ayudarte a diseñar e implementar la solución óptima. Contacta con nuestro equipo para una evaluación y prueba de concepto personalizada.

A BREAK?

Play for a moment before you go

OUR SERVICES

How we can help you

Artificial intelligence

AI agents, chatbots, and intelligent assistants that automate tasks and serve your customers 24/7 to improve the efficiency of your business.

More info

Software Development

Web, mobile, and desktop applications, intranets, e-commerce, SaaS, and management platforms designed for your company's specific needs.

More info

Cloud services

Migration, infrastructure, managed hosting, high availability, and security on Microsoft Azure and Amazon Web Services to help your business scale without limits.

More info

Cybersecurity and pentesting

Security audits, penetration testing and protection of applications, data and infrastructure on-premise and cloud, with ethical hacking and regulatory compliance.

More info

Business Intelligence

Dashboards and data analysis with Power BI: we integrate your sources, design dashboards and KPIs and turn your data into decisions.

More info

Process automation

We automate repetitive tasks and connect your applications with n8n, Power Automate, Make, and RPA, eliminating manual work and increasing productivity.

More info

Training for Companies

We train your teams in technology with criteria: web development, databases, Git, best practices and security, automation with n8n, artificial intelligence for companies and creation of AI solutions with Azure AI Foundry.

More info

Code Auditing

We audit the code that you, your team or an AI create: we tell you what is good and what to improve, we secure it and make it ready for production, web or app.

More info

AI Image Generation

We create for you the images that your business needs with artificial intelligence: product, networks, advertising, illustration and avatars. You tell us what you want and we deliver it ready to use.

More info

AI Video Generation

We create videos with artificial intelligence for you: promotional, networking, virtual presenters, dubbing and animations. You tell us the idea and we will deliver it assembled and ready to publish.

More info

AI Conversational Avatars

We create conversational avatars with AI – digital humans with a face and voice – that serve your customers and teams with the knowledge of your company, on your website, interactive monitors, WhatsApp or Teams.

More info

Online Marketing and AI

Google Ads, Meta Ads, LinkedIn Ads and AI Engine Positioning (GEO/AEO): we attract customers and make your brand appear where they search for you, also on ChatGPT, Gemini and Perplexity.

More info

Do you have a project in mind?

Tell us your vision and we'll turn it into a software solution. Whatever the scope, we make your idea real.