Parquet es columnar, así que comprime bien y permite que una consulta lea solo las columnas que necesita, lo que lo hace adecuado para lecturas analíticas. Avro es orientado a filas, con una codificación binaria compacta y buen soporte de evolución de esquema, lo que lo hace adecuado para rutas con mucha escritura y para payloads de mensajes donde consumes registros completos. En resumen, Avro para transporte y aterrizaje, Parquet para las tablas analíticas que consultas.
Por qué lo preguntan los entrevistadores
La elección de formato es una decisión diaria de ingeniería de datos con consecuencias reales de coste, así que los entrevistadores comprueban si entiendes la disposición física y no solo los nombres de marca. Las respuestas fuertes mencionan predicate pushdown y poda de columnas, las estadísticas por row group, y el hecho de que ambos llevan esquema, así que este no es un debate de tipado frente a no tipado.
Cómo estructurar tu respuesta
- Contrasta primero la disposición columnar frente a la orientada a filas.
- Conecta la disposición columnar con la compresión y la poda de columnas.
- Conecta la disposición por filas con los appends baratos y las lecturas de registros completos.
- Menciona el comportamiento de evolución de esquema en ambos.
- Da un pipeline concreto donde usaste cada uno.
Ejemplo de respuesta
La diferencia es la disposición física. Parquet guarda los valores columna a columna, así que todos los timestamps quedan juntos y comprimen muchísimo, y una consulta que selecciona tres de cuarenta columnas lee de verdad los bytes de tres columnas. Además guarda estadísticas de mínimo y máximo por row group, así que el predicate pushdown puede saltarse trozos enteros. Avro es orientado a filas, así que un registro es contiguo, que es lo que quieres cuando estás añadiendo eventos o leyendo mensajes completos de un topic. En el último pipeline que construí, los payloads de Kafka eran Avro con un schema registry, los aterrizábamos como Avro en la zona raw y luego los compactábamos a Parquet en la capa curada. Eso nos daba escrituras baratas en el borde y lecturas analíticas baratas aguas abajo. Los dos manejan evolución de esquema, pero las reglas de Avro para añadir un campo con valor por defecto son más indulgentes con productores y consumidores que despliegan en momentos distintos, que es la razón por la que suele ganar en el lado del transporte.
¿Tienes esta entrevista a la vuelta de la esquina? GhostPilot escucha tu llamada en vivo, detecta la pregunta en cuanto la hacen y pone una respuesta estructurada en tu pantalla en tiempo real. Pruébalo en tu próxima entrevista de práctica, o coge un Session Pass de $29, sin suscripción, para la de verdad.
Mira cómo funcionaPreguntas de seguimiento que puedes esperar
- ¿Qué es el predicate pushdown y cuándo deja de ayudar?
- ¿Cómo cambia un schema registry tus garantías de compatibilidad?
- ¿Dónde encaja ORC comparado con Parquet?
Más preguntas para Ingeniero de datos
Tu entrevistador hará su propia versión de esta. Pega la descripción real del puesto en el Question Predictor gratuito y obtén las 20 preguntas que ese puesto tiene más probabilidades de hacerte, con lo que cada una busca en realidad.
Predecir mis preguntas