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가 언제·어떻게 실행됐는지"를 보여주는 모니터링 화면입니다.
'Programming > 기술 면접' 카테고리의 다른 글
| [CS Study] 데이터베이스 part 1 (Databases) (3) | 2025.09.16 |
|---|---|
| [CS Study] 웹 개발 (Web Development) (0) | 2025.09.16 |
| [CS Study] Networking (네트워크) (6) | 2025.08.11 |
| [CS Study] Operating Systems part1. (운영체제) (8) | 2025.08.11 |
| [CS Study] Data Structures (자료구조) (9) | 2025.08.11 |