Introductie tot Apache Airflow

Introductie tot Apache Airflow in Python

Mike Metzger

Data Engineer

Wat is een workflow?

  • Workflow - Een reeks stappen om een data‑engineeringproces uit te voeren

 

  • Voorbeeld: Bestanden downloaden, data kopiëren, filteren en wegschrijven naar een database

Workflow‑diagram met sequentiële data‑engineeringstappen van downloaden tot wegschrijven naar een database

Introductie tot Apache Airflow in Python

Wat is Airflow?

Airflow - een platform om workflows te orkestreren:

  • Maken
  • Inplannen
  • Monitoren

 

Apache Airflow‑logo

   

Pictogrammen voor het maken, inplannen en monitoren van workflows

Introductie tot Apache Airflow in Python

Wat is Airflow?

  • Kan programma’s uit elke taal uitvoeren, maar workflows schrijf je in Python
  • Implementeert workflows als DAGs
  • Toegang via webinterface, code, command line of REST API
  • Gebruikt voor ETL‑pipelines, ML‑workflows, automatisering, enz.

 

Apache Airflow‑logo

Introductie tot Apache Airflow in Python

Korte intro tot DAGs

DAG - een model dat alles omvat om een workflow uit te voeren.

  • Bestaat uit taken en hun afhankelijkheden
  • Aangemaakt met details zoals naam, e‑mail, eigenaar

Voorbeeld‑DAG met taken verbonden door afhankelijkheidspijlen

Introductie tot Apache Airflow in Python

Airflow‑componenten

  • Scheduler - Start geplande workflows, dient taken in
  • API Server - Biedt consistente, veilige toegang tot het Airflow‑platform
  • Dag processor - Door de scheduler gelezen om te bepalen welke taken wanneer draaien
  • Metadata‑database - Slaat de status van Dags en taken op

Diagram van Airflow‑componenten: scheduler, API‑server, Dag‑processor en metadata‑database

Introductie tot Apache Airflow in Python

Een workflow draaien in de Airflow‑UI

Airflow DAGs‑weergave met twee geladen DAGs en interactieopties

Introductie tot Apache Airflow in Python

Een workflow draaien in de Airflow‑UI

Airflow DAGs‑weergave met de trigger‑afspeelknop gemarkeerd

Introductie tot Apache Airflow in Python

Een workflow draaien in de Airflow‑UI

Airflow Trigger DAG‑popup met standaard run‑opties en een Trigger‑knop

Introductie tot Apache Airflow in Python

Een workflow draaien in de Airflow‑UI

Airflow DAGs‑weergave met een succesvolle laatste run met groen vinkje

Introductie tot Apache Airflow in Python

Een workflow draaien in de Airflow‑UI

Airflow DAG‑run takenweergave met details per taak, zoals generate_random_number

Introductie tot Apache Airflow in Python

Laten we oefenen!

Introductie tot Apache Airflow in Python

Preparing Video For Download...