본문 바로가기
Programming/기술 면접

DAG란? (Directed Acyclic Gragh, 방향성 비순환 그래프) & Airflow

by Mandy's 2026. 6. 8.

DAG는 원래 그래프 이론 영어인데, Airflow에서는 "하나의 워크플로우 (작업 흐름)을 의미함. 

이름 그대로 풀어보면

Directed (방향성): 작업에 순서가 있음. A → B → C (A 끝나야 B 시작)
Acyclic (비순환): 빙글빙글 돌지 않음. A → B → A 같은 순환 불가 (그러면 영원히 안 끝남)
Graph (그래프): 작업(노드)들이 화살표로 연결된 구조

 

        ┌──> task_B ──┐
task_A ──┤             ├──> task_D
        └──> task_C ──┘

 


이런 식으로 "어떤 작업을 어떤 순서로 실행할지" 정의한 게 DAG입니다.

Airflow 관점에서
Airflow는 배치 작업(정해진 시간에 자동 실행되는 작업)을 스케줄링·관리하는 도구입니다. 

 

그 안에서:

DAG = 워크플로우 한 개 (= 파일 하나가 보통 DAG 하나)
Task = DAG 안의 개별 작업 단위
Schedule = 언제 실행할지 (cron 형식)

 

비유로
DAG를 "자동 실행되는 레시피"라고 생각하면 쉽습니다:

레시피 = DAG
레시피의 각 단계(재료 손질 → 볶기 → 플레이팅) = Task
"매일 아침 7시에 이 레시피 실행" = Schedule
처음 Airflow 화면(첫 질문)에서 봤던 Grid / Graph / Calendar / Gantt 같은 탭들은 전부 "이 DAG가 언제·어떻게 실행됐는지"를 보여주는 모니터링 화면입니다.