
Apache Airflow - Fondamentaux
DAGs, operators (Bash, Python, SQL), scheduling, task dependencies, Airflow UI, connections, variables, trigger rules
1Qu'est-ce qu'un DAG dans Apache Airflow ?
Qu'est-ce qu'un DAG dans Apache Airflow ?
Réponse
Un DAG (Directed Acyclic Graph) est une collection de tâches organisées avec des dépendances et des relations, représentant un workflow complet. Le caractère acyclique signifie qu'il ne peut pas y avoir de boucles dans le graphe des dépendances, ce qui garantit que chaque tâche est exécutée exactement une fois par run. Le DAG définit quand et comment les tâches doivent être exécutées, mais pas ce qu'elles font concrètement.
2Quel paramètre du DAG définit la date à partir de laquelle le scheduler commence à planifier les exécutions ?
Quel paramètre du DAG définit la date à partir de laquelle le scheduler commence à planifier les exécutions ?
Réponse
Le paramètre start_date définit la date à partir de laquelle Airflow commence à planifier les exécutions du DAG. Cette date est utilisée en combinaison avec schedule_interval pour déterminer les data intervals. Un point important : si start_date est dans le passé, Airflow peut déclencher des backfills pour rattraper les exécutions manquées, sauf si catchup=False est configuré.
3Quel operator utiliser pour exécuter une fonction Python dans un DAG Airflow ?
Quel operator utiliser pour exécuter une fonction Python dans un DAG Airflow ?
Réponse
Le PythonOperator permet d'exécuter une fonction Python callable dans un DAG Airflow. La fonction est passée via le paramètre python_callable et peut recevoir des arguments via op_args (liste) ou op_kwargs (dictionnaire). Le PythonOperator est l'un des operators les plus utilisés car il offre une grande flexibilité pour exécuter du code Python personnalisé.
Comment définir une dépendance entre deux tâches task_a et task_b pour que task_b s'exécute après task_a ?
Quelle expression cron représente une exécution quotidienne à minuit ?
+17 questions d'entretien
Autres sujets d'entretien Data Engineering
Linux & Shell - Fondamentaux
Git & GitHub - Fondamentaux
Python avancé pour le Data Engineering
Docker - Fondamentaux
Google Cloud Platform - Fondamentaux
CI/CD et qualité de code
Docker Compose
FastAPI - APIs de données
SQL avancé pour le Data Engineering
Data Lake - Architecture et ingestion
BigQuery pour le Data Engineering
PostgreSQL - Administration
Data Modeling pour le Data Engineering
Fivetran & Airbyte - Ingestion de données
dbt - Fondamentaux
Kubernetes - Fondamentaux
dbt - Fonctionnalités avancées
Patterns ETL / ELT / ETLT
Apache Airflow - Avancé
Airflow + dbt - Orchestration de pipelines
PySpark - Traitement à grande échelle
Google Pub/Sub - Streaming de données
Apache Beam & Dataflow
Kubernetes - Production et scaling
Terraform - Infrastructure as Code
Bases de données NoSQL
Architecture Data moderne
Monitoring et observabilité
IAM et sécurité des données
Maîtrise Data Engineering pour ton prochain entretien
Accède à toutes les questions, flashcards, tests techniques, exercices de code review et simulateurs d'entretien.
Commencer gratuitement