김초송 2023. 6. 14. 20:10

Airflow 란?

  • 파이썬을 이용해 워크플로우를 만들고 관리할 수 있는 오픈소스 기반 워크플로우 관리 도구
  • 2014년 에어비앤비에서 만든 워크플로우 관리 솔루션
  • 워크플로우 생성 시 파이썬으로 구현해야 함
  • Cron 기반의 스케줄링
    • Cron : 리눅스에서 주로 사용
      TASK 가 실행되어야 하는 시작 시간, 주기를 설정
  • 모니터링 및 실패 작업에 대한 재실행 기능이 간편
    • running : 실행 중 (성공)
    • queued : 실행 예정
    • skipped : 생략

Airflow 요소

  • ex) REST API 를 사용한 데이터를 받아 전처리 -> 기존 DB 데이터 삭제 -> 전처리한 데이터 삽입
  • DAG : Directed Acyclic Graph
    DAG 안에는 1개 이상의 Task가 존재
    Task간 선후행 연결이 가능하되 순환되지 않고 방향성을 가짐
  • TASK :
    각각의 업무 (예시에서 3개의 작업)