Si trabajas con datos JSON, XML o cualquier formato semiestructurado en tu organización, probablemente te has enfrentado a un dilema: o sacrificas flexibilidad para ganar rendimiento, o mantienes la flexibilidad y aceptas consultas lentas.
Durante años, esta ha sido la realidad del manejo de datos semiestructurados. Pero en octubre de 2025, Apache Parquet ratificó un nuevo estándar que cambia completamente esta ecuación: Variant, el tipo de datos nativo diseñado específicamente para datos semiestructurados que ofrece tanto flexibilidad como rendimiento excepcional.
Qué es Variant y por qué cambia las reglas del juego
Variant es un tipo de datos ratificado por la comunidad de Apache Parquet que está diseñado para almacenar y consultar datos semiestructurados de forma eficiente. A diferencia de los enfoques tradicionales, Variant utiliza un formato binario compacto que mantiene la flexibilidad de formatos como JSON mientras ofrece un rendimiento comparable a estructuras rígidas.
Lo que hace especial a Variant es que cuenta con soporte nativo en Delta Lake, Apache Iceberg y Apache Spark, convirtiéndolo en un estándar abierto para todo el ecosistema lakehouse. Esto significa que puedes mover tus datos entre diferentes plataformas sin preocuparte por incompatibilidades o pérdida de rendimiento.
El problema con los datos semiestructurados tradicionales
Hasta ahora, las organizaciones tenían básicamente dos opciones para manejar datos semiestructurados:
- Opción 1: Almacenar como cadenas de texto (strings): Esta era la práctica más común. Guardabas tus datos JSON o XML como texto plano dentro de columnas de tipo string. El problema es obvio: cada consulta requiere analizar toda la cadena, buscar el campo que necesitas y extraer su valor. Con millones de registros, esto se traduce en consultas que pueden tardar minutos u horas.
- Opción 2: Definir estructuras rígidas (structs): La alternativa era predefinir exactamente qué campos tendrían tus datos y crear una estructura fija. Esto da buen rendimiento, pero pierdes toda la flexibilidad. Si tus datos cambian o evolucionan, necesitas modificar el esquema, lo cual puede ser complejo y costoso en producción.
Variant elimina este compromiso. Te da la flexibilidad de datos sin esquema con el rendimiento de estructuras optimizadas.
Cómo funciona Variant en Apache Parquet
La magia de Variant está en su formato de codificación binaria. En lugar de almacenar los datos como texto que debe analizarse cada vez, Variant codifica tanto los valores como la estructura de tus datos en un formato binario compacto.
La clave está en cómo navega por los datos. Cuando almacenas JSON como string, el sistema debe leer y procesar todo el objeto para encontrar un campo. Con Variant, la estructura se codifica mediante desplazamientos a ubicaciones específicas dentro del valor. Esto significa que puedes saltar directamente al campo que necesitas sin procesar el resto.
Imagina que tienes un documento JSON con información de un pedido: cliente, productos, dirección de envío, método de pago, etc. Si solo necesitas el nombre del cliente, Variant puede saltar directamente a esa ubicación sin procesar todos los productos, la dirección o el pago. Esto reduce drásticamente el tiempo de consulta.
El formato binario compacto
No solo almacena datos, los optimiza. Los valores se codifican de forma eficiente según su tipo: números enteros ocupan menos espacio que strings, booleanos se compactan, y las estructuras anidadas se organizan de manera que minimizan el overhead de metadatos.
Shredding: La técnica que multiplica el rendimiento
Una de las características más potentes de Variant es el shredding o «trituración». Esta técnica extrae automáticamente los campos más comunes de tus datos Variant y los almacena como columnas separadas y tipadas dentro del mismo archivo Parquet
¿Qué ganas con esto? Tres ventajas fundamentales:
¿Qué ganas con esto? Tres ventajas fundamentales:
- Poda de E/S selectiva: Cuando los campos están separados, solo recuperas exactamente lo que necesitas. Si tu consulta solo requiere dos campos de un documento con 20 campos, solo lees esos dos. Esto puede reducir la E/S en un factor de 10x o más.
- Salto inteligente de datos: Los campos triturados aprovechan todas las optimizaciones de Parquet: estadísticas de columna, grupos de filas, páginas comprimidas. El motor de consultas puede saltar completamente bloques de datos irrelevantes sin siquiera leerlos del disco.
- Compresión superior: Los datos columnares se comprimen mucho mejor que datos mezclados. Al separar los campos comunes, la compresión puede identificar patrones y reducir significativamente el tamaño de almacenamiento.
Según pruebas realizadas sobre datos semiestructurados basados en TPC-DS, Variant con shredding ofrece un rendimiento de lectura 30 veces más rápido que almacenar JSON como strings, y 8 veces más rápido que Variant sin shredding.
Casos de uso reales de Variant
Variant está diseñado para escenarios donde los datos cambian frecuentemente o no tienen una estructura predecible.
Estos son algunos casos donde Variant destaca:
- Registros de aplicaciones y telemetría. Los logs de aplicaciones suelen tener campos que varían según el tipo de evento. Con Variant, puedes almacenar todos los eventos en una misma tabla sin necesidad de definir un esquema rígido que cubra todos los casos posibles.
- Datos de sensores IoT. Diferentes tipos de sensores generan diferentes campos. Variant te permite almacenar lecturas de sensores de temperatura, humedad, presión, movimiento, etc., en una misma estructura sin crear columnas vacías para cada combinación posible.
- Datos de APIs externas. Cuando consumes datos de APIs de terceros, no siempre controlas el esquema. Las APIs pueden añadir campos nuevos, deprecar otros, o cambiar estructuras. Variant absorbe estos cambios sin romper tus pipelines de datos.
- Eventos de aplicaciones web. Los eventos de usuario en aplicaciones web tienen propiedades muy variadas según el tipo de interacción. Variant permite capturar toda esta diversidad sin definir esquemas complejos por adelantado.
Cómo BertIA implementa soluciones con Variant
En BertIA hemos trabajado con numerosas organizaciones que necesitan gestionar grandes volúmenes de datos semiestructurados provenientes de múltiples fuentes. La llegada de Variant representa un punto de inflexión para estos proyectos.
Cuando implementamos arquitecturas de datos modernas sobre Azure Databricks o plataformas con soporte de Delta Lake, ahora incorporamos Variant como pieza fundamental para las capas bronze y silver de nuestros lakehouses. Esto permite a nuestros clientes ingerir datos JSON, XML o CSV con esquemas variables sin necesidad de transformaciones ETL complejas en la entrada.
La combinación de Variant con las capacidades de Delta Lake nos permite ofrecer soluciones donde los datos pueden evolucionar orgánicamente mientras mantenemos rendimiento de consulta enterprise. Esto es especialmente valioso en proyectos de transformación digital donde las fuentes de datos cambian frecuentemente o donde se integran continuamente nuevos sistemas.
En conclusión
Variant representa un salto cualitativo en cómo manejamos datos semiestructurados en entornos analíticos modernos. Al combinar la flexibilidad de JSON con el rendimiento de formatos columnares optimizados, Variant elimina uno de los principales cuellos de botella en arquitecturas de datos actuales.
Para organizaciones que trabajan con datos de múltiples fuentes, APIs externas, IoT o logs de aplicaciones, adoptar Variant significa:
- Consultas hasta 30 veces más rápidas en datos semiestructurados
- Reducción significativa en costes de almacenamiento gracias a mejor compresión
- Mayor agilidad al no depender de esquemas rígidos predefinidos
- Compatibilidad total con el ecosistema lakehouse moderno
Si tu organización necesita optimizar el manejo de datos semiestructurados o está planteando migrar a arquitecturas lakehouse modernas, en BertIA podemos ayudarte a diseñar e implementar soluciones que aprovechen esta y otras tecnologías de vanguardia.
Contacta con nuestros expertos para explorar cómo podemos acelerar tu transformación digital basada en datos.




