Een productie-pijplijn maken

Introductie tot Apache Airflow in Python

Mike Metzger

Data Engineer

DAG's en taken uitvoeren

Een specifieke taak via de command-line draaien:

airflow tasks test <dag_id> <task_id> <date>

Een volledige DAG draaien:

airflow dags trigger -e <date> <dag_id>
Introductie tot Apache Airflow in Python

Herinnering: Operators

  • BashOperator - verwacht een bash_command
  • PythonOperator - verwacht een python_callable
  • BranchPythonOperator - vereist een python_callable en provide_context=True. De callable moet **kwargs accepteren.
  • FileSensor - vereist het argument filepath en kan mode of poke_interval nodig hebben
Introductie tot Apache Airflow in Python

Template-herinneringen

  • Veel objecten in Airflow ondersteunen templates
  • Sommige velden accepteren getemplate strings, andere niet
  • Check dit via de ingebouwde documentatie:
  1. Open de python3-interpreter
  2. Importeer de benodigde libraries (bijv. from airflow.operators.bash import BashOperator)
  3. Voer bij de prompt help(<Airflow object>) uit, bijv. help(BashOperator)
  4. Zoek naar een regel met template_fields. Daarin staan de argumenten die templates ondersteunen.
Introductie tot Apache Airflow in Python

Voorbeeld: template-documentatie

Airflow python3 help

Airflow template help

Introductie tot Apache Airflow in Python

Laten we oefenen!

Introductie tot Apache Airflow in Python

Preparing Video For Download...