inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

Airflow 마스터 클래스

task 연결하기

task 연결 질문입니다.

141

cluelin

작성한 질문수 6

1

t1 >> t3

t2 >> t3

 

이렇게 테스크를 연결했을때

case 1 : t1, t2 둘다 종료되어야 t3가 실행되는지

case 2 : t1이 종료되었을떄, t2가 종료되었을때 각각 t3가 한번씩 실행되는지 궁금합니다.

 

위의 방법과 [t1, t2] >> t3 가 동등하다고 설명해주셨는데

case 1, case2 두가지 방법을 설정하고싶을때는 어떻게 처리하면 될까요?

python 데이터-엔지니어링 airflow

답변 2

1

cluelin

all_success설정은 어디에 설정되어있습니까?

또한 all_success이외의 설정 가능한 옵션 목록을 알고싶습니다.

0

김현진

안녕하세요 cluelin 님!

먼저 첫 번째 문의에 대한 답은 인프런 AI 가 답을 다 해준 것 같네요 ^^

다시 정리하자면, case1 처럼 수행되는게 맞습니다.

case2 처럼 수행하는 옵션은 따로 없습니다.

굳이 case2처럼 수행하고자 한다면 인프런 AI 글대로 t3 태스크를 하나 더 정의하셔서 연결해주시는게 제일 좋을 것 같습니다.

 

그리고 trigger rule에 대한 유형은 Airflow Core Concepts에 잘 나와있어요.

https://airflow.apache.org/docs/apache-airflow/1.10.9/concepts.html#trigger-rules

 

image.png

 

core concepts 에는 이외에도 도움되는 내용이 많아서 한번 쭉 읽어보시면 좋을 것 같아요 ^^

화이팅입니다!

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. Cluelin님.

Airflow에서 여러 Task를 연결할 때, 질문하신 두 가지 경우에 대해 설명 드리겠습니다.

  • t1 >> t3t2 >> t3
  • [t1, t2] >> t3

위의 두 연결 방식은 모두 동일하게 동작하며, t1t2가 모두 성공적으로 완료된 후에 t3가 실행됩니다. 즉, 위 두 방식 모두 “case 1”에 해당하며, case 2처럼 각각의 Task가 끝날 때마다 t3가 실행되는 방식으로는 동작하지 않습니다.

Trigger Rule 설정 관련 기존 답변: Airflow에서 Task의 실행 조건을 설정하는 데 사용되는 ‘트리거 룰(Trigger Rule)‘에 대한 설명이 포함된 Q&A입니다. 기본적으로 all_success (모두 성공한 경우)로 설정되어 있어서, t3t1t2가 모두 성공적으로 완료되어야 실행됩니다.

만약 case 2와 같은 동작을 원한다면, 두 개의 다른 Task (t3_1t3_2)로 분리하고 각각 t1 뒤에, t2 뒤에 연결하면 됩니다.

즉:

t1 >> t3_1
t2 >> t3_2

이렇게 하면, t1t2가 각각 종료될 때 't3_1', 't3_2'가 각각 실행됩니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

pykrx 회원제 전환으로 인한 실습 불가

0

97

2

수료증 발급

0

78

3

에러 발생 관련 질문드립니다.

0

75

2

vscode 작업화면에 오류가 발생하지 않습니다.

0

67

2

plugins 폴더 생성

0

72

2

WSL에서 git push 가 안되요 ㅠ

0

107

2

chatGPT&Airflow로 블로그 자동 포스팅하기 는 Deprecated 가 필요합니다.

0

63

2

github에 회원가입이 안되는데 원인이 뭔지 모르겠어요 ㅠ

0

694

2

설치중인데 venv를 꼭 써야할까요?

0

119

2

설치 버전 관련 질문입니다.

0

65

1

우분투 버전 다운받아야하는데 어떤걸로 설치해야할까요?

0

60

1

DAG 만들기 중 airflow 패키지 로드 에러

0

104

2

3.0에서도 수업노트가 성립하는지 확인 부탁드립니다!

0

94

3

task_id 사용법이 뭔가 바뀐 것 같습니다.

0

75

3

email operator 오류 관련

0

62

2

plugins 폴더 관련

0

90

2

bash operator 관련 문의입니다

0

77

3

스케쥴러 - DAG 파싱 부하 줄이는 과정 질문

0

77

2

Dags refresh 주기 관련 질문

0

121

2

wsl 관련 질문입니다.!

0

72

2

macOS에서 docker 설치

0

92

2

템플릿 변수에 대한 오류

0

57

2

custom_image 디렉토리 문의드립니다.

0

50

2

ETL 인터뷰 관련 문의

0

99

2