<aside> 💡

</aside>

🌀 Airflow 기본 개념 정리

🚀 1. Airflow란?

Apache Airflow는 데이터 파이프라인을 자동으로 스케줄링하고 모니터링할 수 있게 해주는 워크플로우 오케스트레이션 도구입니다.

즉, “복잡한 데이터 처리 과정을 코드로 정의하고 자동화”할 수 있게 해주는 플랫폼입니다.

💡 간단히 말해, ‘데이터 작업의 cron + 모니터링 + 의존성 관리’ 역할을 합니다.


🧱 2. 핵심 개념

개념 설명
DAG (Directed Acyclic Graph) 작업(Task) 간의 의존 관계를 정의한 그래프. Airflow 파이프라인의 뼈대.
Task 실제 실행되는 단위 작업. (예: 기사 크롤링, DB 적재, Slack 알림 등)
Operator 특정 작업을 수행하는 모듈. 예: PythonOperator, BashOperator, S3UploadOperator
Scheduler DAG을 읽고, 지정된 시간에 Task 실행을 트리거하는 컴포넌트.
Executor 실제로 Task를 실행하는 엔진. Local / Celery / Kubernetes 등 다양.
Webserver DAG 상태와 로그를 시각적으로 확인할 수 있는 UI 서버.
Metadata DB DAG 실행 이력과 상태 정보를 저장하는 데이터베이스.
Log 각 Task의 실행 로그. S3나 EC2 볼륨에 저장 가능.

⚙️ 3. 왜 Airflow를 사용하는가?

  1. 복잡한 파이프라인의 자동화
  2. 모니터링 및 장애 대응
  3. 코드 기반 파이프라인 관리
  4. 확장성과 이식성

🗂️ 4. Airflow 기본 동작 구조 및 생성 파일

💡 아래 페이지에 Airflow 설치 및 설정 방법이 상세히 나와있습니다.

Airflow 설치 및 설정 방법

Airflow를 설치하고 초기화하면(airflow db init),