Airflow의 기타 기능Dag Dependencies (1)DAG를 실행하는 방법주기적 실행 : Schedule로 지정DAG Dependencies : 다른 DAG에 의해 TriggerExplicit Trigger (TriggerDagOperator) : DAG A가 DAG B를 Trigger, A가 끝나면 B를 Trigger Reactive Trigger (ExternalTaskSensor) : DAG B가 DAG A의 Task 종료를 기다림, A는 이 사실을 모름ExternalTaskSensor는 사용 조건이 까다로워 실수하기 쉽기 때문에 안 쓰는 방향으로 가는 게 좋음알아두면 좋은 상황에 따라 다른 Task 실행 방식BranchPythonOperater : 조건에 따라 다른 Task로 분기La..
숙제Dags 리스트를 API로 읽고 활성화된 DAG 찾기활성화된 DAGAPI 요청을 통해 얻은 정보 중 'is_paused'가 False면 활성화 중인 DAG'is_paused'가 False인 DAG의 'dag_id'를 출력하는 코드 작성코드활성화된 DAG가 없기에 아무것도 출력이 안됨'is_paused' == True로 수정하면 모든 DAG 출력 여부 확인 완료import requestsfrom requests.auth import HTTPBasicAuthdef print_activated_dags(username='airflow', password='airflow'): url = 'http://localhost:8080/api/v1/dags' auth = HTTPBasicAuth(usern..
mau_summary, channel_summery를 config로 옮기기 아래 링크의 'ELT 구현'을 확인해 보면 nps_summary.py를 예시로 config에 대한 이해를 할 수 있다. nps_summary의 형태를 참고하여 mau_summary, channel_summary를 작성해 보자. nps_summary에서는 input_check, output_check를 통해 테스트가 추가되어 있는데, 해당 부분은 제외하고 필요한 부분만 작성할 것이다. [TIL - 51일 차] Airflow 고급기능과 DBT, 데이터 디스커버리 (1)ELT 작성과 슬랙 연동Docker 기반 Airflow 실행이전에 사용했던 airflow의 docker-compose.yaml의 x-airflow-common과 airf..
Airflow 기초 지식Airflow 소개Airflow 개념파이썬으로 작성된 데이터 파이프라인(ETL) 프레임워크가장 많이 사용되는 데이터 파이프라인 관리 프레임워크Airflow 장단점장점데이터 파이프라인을 세밀하게 제어 가능다양한 데이터 소스와 데이터 웨어하우스를 지원Backfill (여러 이유로 과거의 ETL 실행이 안될 경우 과거의 날짜의 ETL을 실행)이 쉬움단점배우기 쉽지 않음상대적으로 개발 환경을 구성하기 힘듦직접 운영이 쉽지 않으며, 클라우드 버전 사용 선호Airflow 관련 용어DAG(Directed Acyclic Graph)Airflow에서 ETL을 부르는 별칭DAG는 하나 이상의 Task로 구성Task오퍼레이터(Operator)로 만들어짐Airflow 내에서 다양한 종류의 오퍼레이터 제..