Airflow 및 Docker 폴더
로컬의 airflow 폴더에 들어가면 4개의 폴더가 존재한다.

이 로컬의 폴더들은 모든 airflow 컴포넌트 컨테이너의 특정 폴더에 마운트 된다.

컨테이너의 설정을 담고 있는 docker-compose.yaml 파일을 열어보면 모든 컨테이너 안에 특정 경로에 다음의 폴더들을 마운트하라고 적혀있다. 이것 덕분에 우리가 로컬의 dags 폴더에 원하는 dag 코드를 넣어두면 컨테이너들이 이를 인식할 수 있는 것이다.
마운트는 한 운영체제 안에 다른 기기(코드로 운용될 수 있는 기기 ex) 디스크, 메모리 등)가 운영체제 안에 파일 형식으로 인식되는 행위를 의미한다. USB를 꽂을 때 내 컴퓨터에 USB가 뜨는게 마운트라 할 수 있다.
Airflow Webserver
Webserver는 Airflow UI를 통해 DAG 조회, 실행 상태 확인 등을 가능하게 하는 웹 인터페이스다. 사용자와 Airflow가 쉽게 통신할 수 있게 한다. docker-compose.yaml 파일에 웹 서버의 포트를 8080로 해놨기 때문에 8080으로 들어가면 webserver를 볼 수 있다.

DAG
Directed Acyclic Graph의 약자로 직역하면 순환이 없는 일방향 그래프다. 자동화 되기 바라는 일들의 순서를 정해놓은 순서도이다.
파이프라인의 각 일을 하나의 노드라 한다면 비순환 그래프로 이들의 순서를 정해줄 수 있다. 순환이 안되기 때문에 일이 진행되면 전 단계의 일로 돌아갈 수 없다. dags 폴더에 원하는 형식의 dag 코드를 넣어두면 airflow 컨테이너들이 인식해 이를 작동시킨다.

dags 폴더 밑에 하위 폴더를 두어 DAG에 필요한 자료들을 따로 정리할 수도 있다. dags > resource 폴더에 자료들을 보관하고 dags 폴더에 random_slack.py라는 dag 파일을 둔 모습이다.
'Data Engineering' 카테고리의 다른 글
| [데이터 파이프라인] 3. 데이터 수집 실습 (0) | 2025.07.10 |
|---|---|
| [Airflow] Slack을 이용한 Airflow 실습 - 3 (Slack Webhook) (0) | 2025.07.01 |
| [Airflow] Slack을 이용한 Airflow 실습 - 1 (Docker와 Airflow 연동) (0) | 2025.06.24 |
| [데이터 파이프라인] 2. 일반적인 데이터 파이프라인 (0) | 2025.06.17 |
| [데이터 파이프라인] 1. 데이터 파이프라인 소개 및 설명 (0) | 2025.06.16 |
