Introduction à Apache Airflow

Introduction à Apache Airflow en Python

Mike Metzger

Data Engineer

Qu'est-ce qu'un flux de travaux ?

  • Flux de travaux – Ensemble d'étapes pour réaliser un processus d'ingénierie des données

 

  • Exemple : télécharger des fichiers, copier des données, filtrer l'information, écrire dans une base de données

Schéma de flux de travaux : étapes séquentielles, du téléchargement à l'écriture dans une base de données

Introduction à Apache Airflow en Python

Qu'est-ce qu'Airflow ?

Airflow – une plateforme pour orchestrer des flux de travaux :

  • Créer
  • Planifier
  • Surveiller

 

Logo Apache Airflow

   

Icônes représentant créer, planifier et surveiller des flux de travaux

Introduction à Apache Airflow en Python

Qu'est-ce qu'Airflow ?

  • Peut exécuter des programmes dans n'importe quel langage, mais les flux sont écrits en Python
  • Met en œuvre les flux sous forme de Dags
  • Accès par interface Web, code, ligne de commande ou API REST
  • Utilisé pour des pipelines ETL, des flux Machine Learning, l'automatisation, etc.

 

Logo Apache Airflow

Introduction à Apache Airflow en Python

Introduction rapide aux Dags

Dag – un modèle qui représente tout ce qu'il faut pour exécuter un flux de travaux.

  • Composé des tâches et de leurs dépendances
  • Créé avec divers détails, notamment le nom, le courriel, le propriétaire

Exemple de Dag : tâches reliées par des flèches de dépendance

Introduction à Apache Airflow en Python

Composants d'Airflow

  • Scheduler – Déclenche les flux planifiés, soumet les tâches
  • API Server – Offre un accès uniforme et sécurisé à la plateforme Airflow
  • Dag processor – Lu par le planificateur pour déterminer quelles tâches exécuter et quand
  • Metadata database – Stocke l'état des Dags et des tâches

Schéma des composants Airflow : scheduler, API server, dag processor et base de données des métadonnées

Introduction à Apache Airflow en Python

Exécuter un flux dans l'interface Airflow

Vue des Dags dans Airflow affichant deux Dags chargés avec des options d'interaction

Introduction à Apache Airflow en Python

Exécuter un flux dans l'interface Airflow

Vue des Dags Airflow avec le bouton de déclenchement (lecture) en évidence

Introduction à Apache Airflow en Python

Exécuter un flux dans l'interface Airflow

Fenêtre contextuelle de déclenchement d'un Dag avec options par défaut et bouton Trigger

Introduction à Apache Airflow en Python

Exécuter un flux dans l'interface Airflow

Vue des Dags Airflow montrant la dernière exécution réussie avec une coche verte

Introduction à Apache Airflow en Python

Exécuter un flux dans l'interface Airflow

Vue des tâches d'une exécution de Dag Airflow listant les détails individuels, p. ex. generate_random_number

Introduction à Apache Airflow en Python

Passons à la pratique !

Introduction à Apache Airflow en Python

Preparing Video For Download...