Branching

Pengantar Apache Airflow dengan Python

Mike Metzger

Data Engineer

Branching

Branching di Airflow:

  • Menyediakan logika kondisional
  • Menggunakan BranchPythonOperator
  • from airflow.operators.python import BranchPythonOperator
  • Menerima python_callable yang mengembalikan id tugas berikutnya (atau daftar id) untuk diikuti
Pengantar Apache Airflow dengan Python

Contoh branching

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

Contoh branching

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
Pengantar Apache Airflow dengan Python

Tampilan grafik branching

Tampilan grafik DAG branching

Pengantar Apache Airflow dengan Python

Branching hari genap

Tampilan grafik branching - hari genap

Pengantar Apache Airflow dengan Python

Branching hari ganjil

Tampilan grafik branching - hari ganjil

Pengantar Apache Airflow dengan Python

Ayo berlatih!

Pengantar Apache Airflow dengan Python

Preparing Video For Download...