Data Engineering

Apache Airflow - Grundlagen

DAGs, Operators (Bash, Python, SQL), Scheduling, Task-Abhängigkeiten, Airflow UI, Connections, Variables, Trigger Rules

20 Interview-Fragen·
Mid-Level
1

Was ist ein DAG in Apache Airflow?

Antwort

Ein DAG (Directed Acyclic Graph) ist eine Sammlung von Tasks, die mit Abhängigkeiten und Beziehungen organisiert sind und einen vollständigen Workflow darstellen. Die azyklische Natur bedeutet, dass es keine Schleifen im Abhängigkeitsgraphen geben darf, was sicherstellt, dass jeder Task pro Run genau einmal ausgeführt wird. Der DAG definiert, wann und wie Tasks ausgeführt werden sollen, aber nicht, was sie konkret tun.

2

Welcher DAG-Parameter definiert das Datum, ab dem der Scheduler beginnt, Runs zu planen?

Antwort

Der Parameter start_date definiert das Datum, ab dem Airflow beginnt, DAG-Runs zu planen. Dieses Datum wird in Kombination mit schedule_interval verwendet, um Data Intervals zu bestimmen. Ein wichtiger Punkt: Wenn start_date in der Vergangenheit liegt, kann Airflow Backfills auslösen, um verpasste Runs aufzuholen, es sei denn, catchup=False ist konfiguriert.

3

Welcher Operator sollte verwendet werden, um eine Python-Funktion in einem Airflow-DAG auszuführen?

Antwort

Der PythonOperator ermöglicht die Ausführung einer Python-Callable-Funktion in einem Airflow-DAG. Die Funktion wird über den Parameter python_callable übergeben und kann Argumente über op_args (Liste) oder op_kwargs (Dictionary) erhalten. Der PythonOperator ist einer der am häufigsten verwendeten Operators, da er große Flexibilität für die Ausführung von benutzerdefiniertem Python-Code bietet.

4

Wie definiert man eine Abhängigkeit zwischen zwei Tasks task_a und task_b, damit task_b nach task_a ausgeführt wird?

5

Welcher Cron-Ausdruck stellt eine tägliche Ausführung um Mitternacht dar?

+17 Interview-Fragen

Meistere Data Engineering für dein nächstes Interview

Zugang zu allen Fragen, Flashcards, technischen Tests, Code-Review-Übungen und Interview-Simulatoren.

Kostenlos starten