
Apache Airflow - Grundlagen
DAGs, Operators (Bash, Python, SQL), Scheduling, Task-Abhängigkeiten, Airflow UI, Connections, Variables, Trigger Rules
1Was ist ein DAG in Apache Airflow?
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.
2Welcher DAG-Parameter definiert das Datum, ab dem der Scheduler beginnt, Runs zu planen?
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.
3Welcher Operator sollte verwendet werden, um eine Python-Funktion in einem Airflow-DAG auszuführen?
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.
Wie definiert man eine Abhängigkeit zwischen zwei Tasks task_a und task_b, damit task_b nach task_a ausgeführt wird?
Welcher Cron-Ausdruck stellt eine tägliche Ausführung um Mitternacht dar?
+17 Interview-Fragen
Weitere Data Engineering-Interviewthemen
Linux & Shell - Grundlagen
Git & GitHub - Grundlagen
Fortgeschrittenes Python für Data Engineering
Docker - Grundlagen
Google Cloud Platform - Grundlagen
CI/CD und Codequalität
Docker Compose
FastAPI - Daten-APIs
Fortgeschrittenes SQL für Data Engineering
Data Lake - Architektur und Ingestion
BigQuery für Data Engineering
PostgreSQL - Administration
Data Modeling für Data Engineering
Fivetran & Airbyte - Daten-Ingestion
dbt - Grundlagen
Kubernetes - Grundlagen
dbt - Erweiterte Funktionen
ETL- / ELT- / ETLT-Patterns
Apache Airflow - Fortgeschritten
Airflow + dbt - Pipeline-Orchestrierung
PySpark - Verarbeitung im großen Maßstab
Google Pub/Sub - Daten-Streaming
Apache Beam & Dataflow
Kubernetes - Produktion und Skalierung
Terraform - Infrastructure as Code
NoSQL-Datenbanken
Moderne Data Architecture
Monitoring und Observability
IAM und Datensicherheit
Meistere Data Engineering für dein nächstes Interview
Zugang zu allen Fragen, Flashcards, technischen Tests, Code-Review-Übungen und Interview-Simulatoren.
Kostenlos starten