프로젝트 소개

Apache Airflow는 워크플로우를 작성, 예약 및 모니터링하도록 설계된 플랫폼입니다. 워크플로우를 코드(Directed Acyclic Graphs 또는 DAGs)로 정의함으로써 유지 관리, 버전 관리 및 테스트가 더 용이해집니다. 이 플랫폼에는 지정된 종속성에 따라 워커에서 작업을 실행하는 스케줄러, DAG 관리를 위한 풍부한 명령줄 인터페이스, 파이프라인 시각화 및 문제 해결을 위한 사용자 인터페이스가 포함되어 있습니다. 주요 기능은 다음과 같습니다: - 동적 파이프라인 생성: 워크플로우가 Python으로 정의되어 동적 생성 및 매개변수화가 가능합니다. - 확장성: 광범위한 기본 제공 오퍼레이터를 제공하며 사용자 정의 확장을 지원합니다. - 유연성: Jinja 템플릿 엔진을 통합하여 풍부한 사용자 정의가 가능합니다. - 광범위한 사용 사례: 주로 데이터 파이프라인에 사용되지만, 머신러닝 워크플로우(학습, 평가, 배포) 및 AI/LLM 기반 워크로드의 오케스트레이션에도 사용됩니다. - 모니터링 UI: DAG 개요, 에셋 종속성 그래프, 실행의 그리드 및 그래프 표현, 백필링 도구를 포함한 종합적인 인터페이스를 제공합니다. Airflow는 정적이거나 천천히 변경되는 워크플로우를 위해 설계되었으며 멱등성(idempotent) 작업을 강조합니다. 스트리밍 솔루션은 아니지만 실시간 데이터를 배치로 처리할 수 있습니다. PostgreSQL, MySQL, SQLite(개발용)를 포함한 다양한 데이터베이스를 지원하며 PyPI, Docker 이미지 또는 Helm Charts를 통해 배포할 수 있습니다.