01. Task 연결 방법
Task 연결 방법에는 두가지 방법이 있다.
1. >>, << 를 사용
2. set_downstream(), set_upstream() 함수 사용
airflow 공식 사이트에 DAG을 작성하는 방법이 자세히 나와있다.
https://airflow.apache.org/docs/apache-airflow/stable/core-concepts/dags.html
가이드에서는 ">>", "<<" 를 사용하는 방법을 추천하고 있다.
02. >>, << 사용하여 task 연결하기
이 그래프처럼 task를 연결해보자.
먼저 local의 dags 폴더에 dags_cron_test.py를 작성해준다.
EmptyOperator는 아무것도 하지 않는 오퍼레이더이며 인수로 받는 것이 task_id 뿐이다.
EmptyOperator로 테스크 인스턴스를 만들어준다.
>> 로 task들을 연결해준다.
리스트 "[]" 로 같은 레벨의 테스크를 묶어줄 수 있다.
t1 >> [t2, t3] >> t4
t5 >> t4
[t4, t7] >> t6 >> t8
dag 코드를 다 작성하고 git에 올려준다.
airflow 디렉토리에서 pull 받는다.
airflow 서비스를 실행시킨다.
docker compose up
+
파일이 바로 보이지 않는다면!
dags 폴더에 스케줄러가 주기적으로 파싱을 하는데, 기본적으로 5분에 한번씩 스캔을 하기 때문에 파일이 바로 올라오지 않을 수 있다.
Graph 탭에서 task의 선행-후행 관계가 잘 작성되었는지 확인할 수 있다.
참고: Airflow 마스터 클래스
'⚙️ 데이터 엔지니어링 > Airflow' 카테고리의 다른 글
[Airflow] Cron 표현식 정리 (0) | 2024.03.31 |
---|---|
[Airflow] Bash 오퍼레이터로 DAG 만들기 (0) | 2024.03.30 |
[Airflow] MacOS m1 환경에 Airflow 개발환경 설정하기 (2) | 2024.03.30 |
[Airflow] 01. Airflow 소개 (0) | 2024.03.16 |