Jenkins vs Apache Airflow for ETL Jobs

Created by Andrii Malaman

Andrii Malaman

What is ETL Pipeline?

Questions to answer ?

  • Automatic start (schedule)
  • Dependencies between jobs
  • Monitoring
  • Restart after failure

Historical solution: CRON!

CRON

  • Automatic start (schedule) ✅
  • Dependencies between jobs 🚫
  • Monitoring 🚫
  • Restart after failure ⚠️

Popularity (stackshare.io)

Comparison params

  • Easy to setup
  • Easy to use
  • Dependencies between jobs
  • Monitoring
  • Restart after failure

Easy to setup: Jenkins

Easy to setup: Airflow

Airflow: Provider packages

Dependencies between jobs: Jenkins

Dependencies between jobs: Airflow

Tool Setup Usage Dependencies Mon. Recovery
Jenkins ⚠️ ⚠️ ⚠️
Airflow 🚫
https://malaman.github.io/talks/2021-jenkins-vs-airflow-for-etl-jobs