[Airflow] DAG 선언 및 실행하기
·
Databases/Data Engineering
참고https://airflow.apache.org/docs/apache-airflow/stable/core-concepts/dags.html#running-dagsDAG방향 비순환 그래프(Directed Acyclic Graph, DAG)는 방향이 존재하며 사이클이 존재하지 않은 그래프를 말한다. Airflow와 같은 작업 스케쥴링 툴에서 자주 사용하는 개념이다. Airflow에서 DAG는 작업(task)과 작업 간의 의존성을 정의하는 구조이다. 작업은 DAG의 기본 단위이며, 의존성을 통해 작업 간의 실행 순서를 정의한다. 스케쥴링을 통해 특정 주기나 이벤트에 따라 자동으로 실행될 수 있도록 할 수 있다.DAG 선언 import datetime from airflow import DAG from ai..
[Airflow] Airflow의 Branching 알아보기
·
Databases/Data Engineering
BranchingAirflow의 Branching은 DAG 내에서 조건에 따라 특정 작업을 선택적으로 실행할 수 있도록 하는 기능이다. 사용되는 두 가지 개념이 있다.BranchPythonOperator는 파이썬 함수를 호출하여 조건에 따라 다음에 실행할 작업을 결정한다. 특정 조건을 평가하여 그 결과에 따라 다음 실행할 태스크의 ID를 반환한다.DummyOperator는 선택되지 않은 경로의 태스크를 대체한다. 이 연산자는 아무 작업도 수행하지 않지만 DAG의 흐름을 유지하는 데 사용된다. 전체 코드from airflow import DAGfrom airflow.operators.python_operator import BranchPythonOperator, PythonOperatorfrom airfl..
[Airflow] Airflow 실행하기 with Docker
·
Databases/Data Engineering
참고https://leeyh0216.github.io/posts/airflow_install_and_tutorial/ Airflow 튜토리얼 실행해보기Airflow 튜토리얼 실행해보기 Airflow 기본 개념 - DAG와 Operator 개요 Airflow를 사용할 일이 많아질 것 같아 사용법 정리 포스팅을 진행한다. Ubuntu 환경에서 설치, 운영, 활용 실습을 진행하려 했으나,leeyh0216.github.io Apache AirflowApache Airflow는 데이터 파이프라인을 작성, 스케쥴링, 모니터링하기 위한 오픈 소스 플랫폼이다. 복잡한 데이터 처리 작업을 하는 데 유리하며, ETL(추출, 변환, 적재) 프로세스에 많이 사용된다. 스케쥴링 기능은 cron 표현식을 통해 작업의 실행 주기를..