Branching

Introductie tot Apache Airflow in Python

Mike Metzger

Data Engineer

Vertakken

Vertakken in Airflow:

  • Biedt voorwaardelijke logica
  • Met BranchPythonOperator
  • from airflow.operators.python import BranchPythonOperator
  • Neemt een python_callable die de volgende task-id (of lijst) retourneert
Introductie tot Apache Airflow in Python

Voorbeeld van vertakken

def branch_test(**kwargs):
  if int(kwargs['ds_nodash']) % 2 == 0:
    return 'even_day_task'
  else:
    return 'odd_day_task'
Introductie tot Apache Airflow in Python

Voorbeeld van vertakken

def branch_test(**kwargs):
  if int(kwargs['ds_nodash']) % 2 == 0:
    return 'even_day_task'
  else:
    return 'odd_day_task'

branch_task = BranchPythonOperator(task_id='branch_task',dag=dag, provide_context=True, python_callable=branch_test)
start_task >> branch_task >> even_day_task >> even_day_task2
branch_task >> odd_day_task >> odd_day_task2
Introductie tot Apache Airflow in Python

Vertakkingsgrafiek

Vertakkings-DAG grafiekweergave

Introductie tot Apache Airflow in Python

Vertakken op even dagen

Vertakkingsgrafiekweergave - even dagen

Introductie tot Apache Airflow in Python

Vertakken op oneven dagen

Vertakkingsgrafiekweergave - oneven dagen

Introductie tot Apache Airflow in Python

Laten we oefenen!

Introductie tot Apache Airflow in Python

Preparing Video For Download...