🎁 Jetzt registrieren und bis zu 30 Minuten Online-KI kostenlos nutzen. Keine Kreditkarte erforderlich.

Databricks Interview-Fragen und Antworten: 25 Fragen zu Spark, Delta Lake und Pipelines

August 31, 2026
Databricks Interview-Fragen mit Antworten zu Spark-Shuffles und -Skew, Delta Lake, MERGE, OPTIMIZE, Unity Catalog, Medallion-Design und Szenarien bei langsamen Jobs.
Databricks Interview-Fragen und Antworten: 25 Fragen zu Spark, Delta Lake und Pipelines
databricks interview questions
databricks interview questions and answers
delta lake interview questions
spark interview questions databricks

Databricks-Interviews kombinieren meist Apache Spark (wie Jobs laufen, warum sie langsam sind), Delta Lake (was Tabellen zuverlässig macht) und die Plattform (Cluster, Jobs, Governance). Die stärksten Antworten verknüpfen jedes Konzept mit einem echten Problem wie schiefen Joins, kleinen Dateien oder einer Pipeline, die sicher erneut ausgeführt werden muss.

Databricks benennt und reorganisiert Produkte recht häufig, nenne also, welche Namen du verwendet hast (zum Beispiel Delta Live Tables, heute Teil der Lakeflow-Familie), und prüfe die Stellenbeschreibung auf den Stack.

Unten findest du 25 Fragen mit Antworten.

Plattform und Architektur

1. Was ist Databricks, und was ist ein Lakehouse?

Databricks ist eine Cloud-Daten- und KI-Plattform rund um Apache Spark. Ein Lakehouse hält Daten in offenen Formaten auf Cloud-Objektspeicher und ergänzt die Zuverlässigkeit und Governance eines Warehouses obendrauf, sodass eine Datenkopie Engineering, Analytics und Machine Learning bedienen kann.

2. Was ist der Unterschied zwischen All-Purpose-Clustern, Job-Clustern und SQL-Warehouses?

All-Purpose-Cluster sind für interaktive Arbeit und Entwicklung. Job-Cluster starten für einen geplanten Job und fahren danach herunter, was weniger kostet. SQL-Warehouses sind Compute, das für SQL- und BI-Abfragen optimiert ist.

3. Wie kontrollierst du die Kosten?

Nutze Job-Cluster für die Produktion, Auto-Termination bei interaktiven Clustern, Autoscaling mit sinnvollen Limits, richtig dimensionierte Instanztypen, Spot-Instanzen für fehlertolerante Arbeit, Cluster-Policies, um einzuschränken, was Leute erstellen können, und Tags für die Kostenberichterstattung.

4. Was ist Unity Catalog?

Die Governance-Schicht für Daten- und KI-Assets. Sie bietet einen dreistufigen Namespace (Catalog, Schema, Table), zentrale Zugriffskontrolle, Lineage und Auditing über Workspaces hinweg.

Delta Lake

5. Was ist Delta Lake, und warum sollte man es statt reinem Parquet verwenden?

Delta Lake ist ein Tabellenformat, das den Parquet-Dateien ein Transaktionslog hinzufügt. Es bietet ACID-Transaktionen, Schema-Enforcement und -Evolution, Time Travel sowie effiziente Updates und Deletes. Reines Parquet hat keine Transaktionen, ein fehlgeschlagener Schreibvorgang kann also partielle Daten hinterlassen, und Leser können einen inkonsistenten Zustand sehen.

6. Wie funktioniert das Delta-Transaktionslog?

Jeder Commit fügt einen JSON-Eintrag zum Ordner _delta_log hinzu, mit periodischen Checkpoints. Das Log listet auf, welche Datendateien in jeder Version zur Tabelle gehören. Leser nutzen es, um einen konsistenten Snapshot zu sehen, und Schreiber nutzen optimistische Nebenläufigkeit, wobei sie bei einem Konflikt mit einem anderen Commit erneut versuchen oder fehlschlagen.

7. Was ist Time Travel?

Das Abfragen einer früheren Version einer Tabelle über Versionsnummer oder Zeitstempel, für Audit, Debugging oder Rollback.

SELECT * FROM sales VERSION AS OF 12;
RESTORE TABLE sales TO VERSION AS OF 12;

8. Wie machst du ein Upsert mit Delta?

Mit MERGE INTO:

MERGE INTO customers t
USING updates s ON t.id = s.id
WHEN MATCHED THEN UPDATE SET *
WHEN NOT MATCHED THEN INSERT *;

Stelle sicher, dass die Quelle eine Zeile pro Schlüssel hat, sonst schlägt der Merge fehl oder liefert falsche Ergebnisse.

9. Was machen OPTIMIZE und VACUUM?

OPTIMIZE kompaktiert viele kleine Dateien zu größeren, was Lesevorgänge beschleunigt. VACUUM löscht Dateien, die nicht mehr von der Tabelle referenziert werden und älter als die Aufbewahrungsfrist sind, was Speicher freigibt, aber Time Travel einschränkt. Setze die Aufbewahrung nicht sehr kurz, während andere Jobs möglicherweise noch ältere Versionen lesen.

10. Wie legst du Daten für schnelle Abfragen aus?

Partitioniere nur nach Spalten mit niedriger Kardinalität, auf die Abfragen oft filtern, und halte Partitionen groß genug. Übermäßiges Partitionieren erzeugt viele kleine Dateien. Für andere Spalten nutze Z-Ordering oder Liquid Clustering (der neuere Ansatz), die Daten so clustern, dass Abfragen Dateien überspringen können.

Spark-Grundlagen

11. Was sind Transformationen und Aktionen, und was bedeutet Lazy Evaluation?

Transformationen wie filter und select bauen einen Plan auf, werden aber nicht ausgeführt. Aktionen wie count und write lösen die Ausführung aus. Da Spark den gesamten Plan zuerst sieht, kann es ihn optimieren.

12. Was ist ein Shuffle, und warum ist er teuer?

Ein Shuffle verschiebt Daten über das Netzwerk zwischen den Executors, damit Zeilen mit demselben Schlüssel zusammenkommen, etwa bei Joins, groupBy und distinct. Dabei fallen Disk- und Netzwerk-I/O an, weshalb das Reduzieren von Shuffles der wichtigste Weg zu schnelleren Jobs ist.

13. Wie joint Spark zwei Tabellen, und wie beschleunigt man das?

Standardmäßig verwenden große Joins einen Shuffle- (Sort-Merge-) Join. Ist eine Tabelle klein, schickt ein Broadcast-Join sie an jeden Executor und vermeidet das Shufflen der großen Tabelle.

from pyspark.sql.functions import broadcast
df = big.join(broadcast(small), "id")

14. Was ist Data Skew, und wie behebt man ihn?

Ein paar Schlüssel enthalten die meisten Zeilen, sodass einige Tasks deutlich länger brauchen als der Rest. Ein Anzeichen ist ein Task, der in der Spark UI lange läuft. Lösungen sind die Skew-Behandlung der adaptiven Query-Ausführung, das Salting des Schlüssels, das Broadcasten der kleineren Seite oder das Herausfiltern von Null- oder Default-Schlüsseln, die den Skew verursachen.

15. Was ist Adaptive Query Execution (AQE)?

Spark passt den Plan während der Ausführung anhand echter Statistiken an: Es kann kleine Shuffle-Partitionen zusammenfassen, Join-Strategien wechseln und schiefe Partitionen aufteilen. In neueren Versionen ist es standardmäßig aktiviert.

16. Was ist der Unterschied zwischen repartition und coalesce?

repartition kann die Anzahl der Partitionen erhöhen oder verringern und führt einen vollständigen Shuffle durch. coalesce verringert die Partitionen nur und vermeidet einen vollständigen Shuffle, ist also günstiger, kann aber ungleichmäßige Partitionen erzeugen.

17. Wann sollte man ein DataFrame cachen?

Wenn man dasselbe DataFrame in einem Job mehrfach wiederverwendet und die Neuberechnung teuer ist. Cache nichts, was nur einmal verwendet wird, und gib den Cache frei, wenn du fertig bist.

18. Warum sind integrierte Funktionen Python-UDFs vorzuziehen?

Integrierte Funktionen laufen innerhalb der JVM und können optimiert werden. Python-UDFs verschieben Daten zwischen JVM und Python und sind für den Optimierer undurchsichtig, daher sind sie langsamer. Verwende nach Möglichkeit integrierte Funktionen oder pandas-UDFs.

Pipelines

19. Was ist die Medallion-Architektur?

Ein geschichtetes Design: Bronze enthält die roh ingestierten Daten, Silber die bereinigten und angeglichenen Daten und Gold geschäftsrelevante Aggregate, die für das Reporting bereit sind. Es macht klar, wo Qualitätsprüfungen stattfinden, und erlaubt es, spätere Schichten aus früheren neu aufzubauen.

20. Was ist Auto Loader?

Eine Funktion, die neue Dateien aus dem Cloud-Speicher inkrementell und effizient ingestiert, sobald sie eintreffen, und dabei verfolgt, welche Dateien bereits verarbeitet wurden, mit Unterstützung für Schema-Inferenz und -Evolution.

21. Wie geht Structured Streaming mit Fehlern und Exactly-once um?

Es verwendet Checkpoints, die Fortschritt und Zustand speichern, sodass eine neu gestartete Query dort weiterläuft, wo sie aufgehört hat. Mit wiederholbaren Quellen und idempotenten oder transaktionalen Senken wie Delta erhält man Ende-zu-Ende-Exactly-once-Ergebnisse.

22. Wie macht man eine Pipeline sicher wiederholbar?

Mache Schreibvorgänge idempotent: Verwende MERGE auf einem Schlüssel, überschreibe eine bestimmte Partition oder nutze eine Run-ID, um Duplikate zu vermeiden. Halte den Eingabebereich des Jobs explizit und protokolliere Zeilenanzahlen, damit du Ergebnisse überprüfen kannst.

23. Wie führt man Datenqualitätsprüfungen durch?

Verwende Expectations oder Constraints in der Pipeline (zum Beispiel Delta-Constraints oder Expectations deklarativer Pipelines), validiere Zeilenanzahlen, Nulls und Eindeutigkeit und quarantäniere fehlerhafte Zeilen, statt den gesamten Ladevorgang fehlschlagen zu lassen – je nach Vereinbarung mit den nachgelagerten Nutzern.

Szenarien

24. Ein Job, der in 20 Minuten lief, braucht jetzt drei Stunden. Was tust du?

  1. Vergleiche die Spark UI beider Läufe: Welche Stage ist langsamer geworden?
  2. Prüfe die Eingabegröße und ob eine Tabelle gewachsen ist oder ihr Layout verloren hat, zum Beispiel viele kleine Dateien.
  3. Suche in der langsamen Stage nach Skew und nach Spilling auf die Festplatte.
  4. Prüfe Cluster-Änderungen, etwa weniger Worker oder einen geänderten Instanztyp.
  5. Prüfe auf Änderungen im Code oder in den Spark-Einstellungen und auf einen neuen Join oder eine UDF.
  6. Behebe die Ursache (Kompaktierung, Broadcast, Skew-Behandlung oder Dimensionierung) und füge Monitoring hinzu.

25. Entwirf eine Pipeline, die täglich JSON-Dateien ingestiert und ein Dashboard bedient.

"Auto Loader liest neue Dateien in eine Bronze-Delta-Tabelle mit den Rohdaten und Metadaten. Ein Job parst und bereinigt sie zu Silber und dedupliziert sie per MERGE anhand des Schlüssels. Eine Gold-Tabelle aggregiert für das Dashboard, das aus einem SQL Warehouse liest. Unity Catalog verwaltet den Zugriff, Expectations fangen schlechte Daten ab, und der Job läuft auf einem Job-Cluster mit Alarmen bei Fehlern und bei Anomalien der Zeilenanzahl."

Vorbereitung

Arbeite ein Notebook durch, das eine Datei liest, mit einer anderen Tabelle verknüpft, in Delta schreibt und MERGE verwendet. Öffne die Spark UI und finde einen Shuffle und einen skewed Task. Bereite eine Geschichte darüber vor, wie du eine Pipeline beschleunigt oder repariert hast – mit Zahlen. Verwandte Themen findest du in unseren Leitfäden zu Kafka, Snowflake und Talend.

Sprich deine Antworten laut aus, besonders die zu Performance – hier neigen Kandidaten dazu, Tuning-Tipps aufzulisten, ohne eine Diagnose zu stellen. Ein Mock-Interview-Transkript zeigt dir, wo. Befolge in jedem Live-Interview die Regeln des Arbeitgebers zu KI-Tools.

Üben Sie Databricks-Interview-Antworten mit YesToTheOffer

Führen Sie ein technisches Mock-Interview durch, erklären Sie ein Pipeline-Design laut und überprüfen Sie anschließend Ihr Transkript. 30 kostenlose Minuten, kein Abonnement.

iOS & Android — Demnächst
Preise ansehen