-
Airflow - Task 의존성Airflow 2024. 1. 21. 17:26
선형 의존성
가장 일반적인 유형의 의존성 관계를 정의하는 방법이다.
- 선형 의존성을 정의하는 방법
task1 >> task2 >> task3 # task2, 3는 이전 task에 의존하는 관계가 되어 # task2는 task1이 끝나야 실행되고, task3는 task2가 끝나야 실행이 된다.
Fan-in, Fan-out 형식의 관계
Fan-in - N : 1 관계
1의 위치에 놓이는 task를 실행하기 위해서는 N개의 tasks가 종료되어야 실행된다.
- Fan-in 의존성을 정의하는 방법
task1 >> [task2, task3]
Fan-out - 1 : N 관계
N개들의 tasks가 실행되기 위해서는 1의 task가 반드시 끝나야 실행된다.
Fan-out의 N개의 tasks는 병렬 실행이 가능하다.- Fan-out 의존성을 정의하는 방법
[task1, task2] >> task3
tasks의 병렬 실행 선언
병렬로 실행하고싶은 경우, 아래와 같이 선언 가능하다.
task1 >> task2 >> task5 task3 >> task4 >> task5 # task1, 2를 병렬실행, task3, 4를 병렬실행한 후 task5를 Fan-in 의존성으로 둠. # 이렇게 되면 task5는 task2, 4가 모두 종료되어야 실행가능해짐.
선형, Fan-in, Fan-out, 병렬 실행의 조합
'Airflow' 카테고리의 다른 글
Airflow - Testing (0) 2024.03.25 Airflow - Sensor (0) 2024.02.18 Airflow - Branch (0) 2024.01.21 Airflow - DAG, Task, Operator, Scheduling (0) 2023.12.20 Airflow - 에어플로우가 구동되려면. (0) 2023.12.19 - 선형 의존성을 정의하는 방법