Parquet ist spaltenorientiert, komprimiert also gut und erlaubt einer Query, nur die benötigten Spalten zu lesen, was es für analytische Reads richtig macht. Avro ist zeilenorientiert mit kompakter Binärkodierung und starker Unterstützung für Schema Evolution, was es für schreiblastige Pfade und Message-Payloads richtig macht, bei denen du ganze Records konsumierst. Kurz: Avro für Transport und Landing, Parquet für die analytischen Tabellen, die du abfragst.
Warum Interviewer das fragen
Die Formatwahl ist eine tägliche Data-Engineering-Entscheidung mit echten Kostenfolgen, also prüfen Interviewer, ob du das physische Layout verstehst statt nur die Markennamen. Starke Antworten erwähnen Predicate Pushdown und Column Pruning, Row-Group-Statistiken und dass beide ein Schema tragen, es also nicht um typisiert gegen untypisiert geht.
So baust du deine Antwort auf
- Stell zuerst spaltenorientiertes gegen zeilenorientiertes Layout.
- Verbind spaltenorientiertes Layout mit Kompression und Column Pruning.
- Verbind das Zeilenlayout mit günstigen Appends und Reads ganzer Records.
- Erwähn das Verhalten bei Schema Evolution für beide.
- Gib eine konkrete Pipeline, in der du jeweils beides genutzt hast.
Beispielantwort
Der Unterschied ist das physische Layout. Parquet speichert Werte Spalte für Spalte, also liegen alle Timestamps beieinander und komprimieren stark, und eine Query, die drei von vierzig Spalten auswählt, liest tatsächlich nur Bytes im Umfang von drei Spalten. Zusätzlich hält es Min- und Max-Statistiken pro Row Group, sodass Predicate Pushdown ganze Blöcke überspringen kann. Avro ist zeilenorientiert, ein Record liegt also zusammenhängend, und genau das willst du, wenn du Events anhängst oder ganze Messages von einem Topic liest. In der letzten Pipeline, die ich gebaut habe, waren die Kafka-Payloads Avro mit Schema Registry, wir haben sie als Avro in der Raw Zone gelandet und dann in Parquet im Curated Layer verdichtet. Das gab uns günstige Writes am Rand und günstige analytische Reads weiter hinten. Beide beherrschen Schema Evolution, aber Avros Regeln zum Hinzufügen eines Felds mit Default sind nachsichtiger für Producer und Consumer, die zu unterschiedlichen Zeitpunkten deployen, weshalb es auf der Transportseite meist gewinnt.
Steht dieses Vorstellungsgespräch bald an? GhostPilot hört bei deinem Live-Call mit, erkennt die Frage in dem Moment, in dem sie gestellt wird, und bringt dir eine strukturierte Antwort in Echtzeit auf den Bildschirm. Probier es im nächsten Mock aus, oder hol dir einen $29 Session Pass, kein Abo, für den Ernstfall.
So funktioniert esNachfragen, mit denen du rechnen solltest
- Was ist Predicate Pushdown und wann hilft es nicht?
- Wie verändert eine Schema Registry deine Kompatibilitätsgarantien?
- Wo passt ORC im Vergleich zu Parquet hinein?
Weitere Fragen für Data Engineer
Dein Interviewer stellt seine eigene Version davon. Kopier deine echte Stellenbeschreibung in den kostenlosen Question Predictor und bekomm die 20 Fragen, die diese Rolle am wahrscheinlichsten stellt, samt dem, worauf jede wirklich abzielt.
Meine Fragen vorhersagen