Airflow13 airflow trigger rule Trigger Rule은 선행 태스크들의 상태에 따라 현재 태스크의 실행 여부를 결정하는 규칙이다.기본적으로 Airflow는 모든 직접적인 상위 태스크가 성공적으로 완료되어야 다음 태스크를 실행한다.하지만 Trigger Rule을 사용하면 이 기본 동작을 변경할 수 있어 좀 더 복잡한 dag를 설계할 수 있다. Airflow에서 제공하는 Trigger Rule의 종류는 아래와 같다. 아래에서 말하는 상위 task는 현재 task와 직접적으로 연결된 이전 태스크를 의미한다.Trigger RuleDescriptionall_success상위 task가 모두 성공하면 실행all_failed상위 task가 모두 실패하면 실행all_done상위 task가 모두 완료되면 실행 (성공 / 실패 여부 무관)all_ski.. 2024. 8. 11. airflow 실행 날짜 이해: DAG 실행 시간과 execution_date 비교 airflow에는 스케줄링을 위한 여러 가지의 날짜 개념이 존재하며, 대표적으로 start_date, end_date, execution_date 등이 있다. 일반적으로는 이해하는 실행 날짜에 대한 개념은 아래와 같다.start_date스케줄링된 job이 처음 실행되는 시간end_date마지막 job이 실행되는 시간execution_date 실제 job이 실행된 시간 하지만 airflow에서는 다른 의미로 사용된다. airflow에서의 실행 날짜의 기준은 job이 스케줄링된 시간이다.따라서 실제 의미는 아래와 같다.start_datejob을 처음 예약하는 시간end_date마지막 job이 예약되는 시간execution_date job을 처음 예약하는 시간, 데이터 처리의 기준점으로 사용e.g. 만약 매일.. 2024. 8. 9. airflow dag의 구조 bashoperator와 pythonoperator를 사용하는 dag를 생성한다. 각 요소에 대한 자세한 설명은 주석을 확인한다. import pendulumfrom datetime import timedeltaimport timefrom airflow import DAGfrom airflow.operators.bash import BashOperatorfrom airflow.operators.python import PythonOperatortz = pendulum.timezone("Asia/Seoul") # dag 스케쥴링 기준 timezone을 설정합니다.default_args = { 'owner': 'kyeongseo.oh', # dag의 관리자를 명시합니다. 'retries': 1, .. 2024. 6. 22. 이전 1 2 다음 반응형