Apache Airflow 3의 공식 GA 출시 소식과 주요 변경사항, 기술적 발전, 공헌자 명단, 후기 참여 안내를 담은 한국어 번역입니다.
우리는 2024년 9월 Airflow Summit에서 Apache Airflow 3.0®에 집중하려는 계획을 발표했으며, 이제 Airflow 3.0이 정식으로 출시되었음을 기쁜 마음으로 알립니다!
Airflow 3.0은 Airflow 역사상 가장 큰 릴리즈입니다. 2.0은 2020년에 출시되었고, 지난 4년 동안 분기마다 점진적인 업데이트가 있었으며, 2024년 4분기에 2.10 버전이 공개되었습니다. 현재 Airflow는 월 3천만 건의 다운로드(2020년 대비 30배 이상 증가), 8만 개 이상의 조직(2020년 2만 5천개에서 증가)이 사용 중입니다. 2.0 이후 Airflow의 인기가 폭발적으로 성장했습니다.
지난 4년간 Airflow는 모든 규모의 조직에서 비즈니스 핵심 데이터 워크플로우를 구동하는 툴이 되었습니다. ETL, ELT, Reverse ETL에서 시작해, 전체 사용자의 30% 이상이 MLOps에, 10%가 GenAI 워크플로우에 사용하며 활용사례가 기하급수적으로 늘었습니다. Airflow 3는 이러한 확장과 요구를 반영한 결과로, 엔터프라이즈 데이터 애플리케이션 개발의 표준입니다.
주요 하이라이트
이것은 300명 이상의 Airflow 커뮤니티 개발자가 오랜 시간 협업한 결과로, 이 멋진 팀의 일원임이 대단히 자랑스럽습니다. 주요 업데이트는 아래와 같습니다.
Airflow 연례 설문에서 최다 요청된 기능입니다. Airflow 3에서는 DAG이 실행 도중 새 버전이 업로드 되어도 시작 시점의 버전으로 끝까지 실행됩니다. 이제 UI의 모든 DAG 실행이 실행 당시 버전, 태스크 구조, 코드, 로그 등과 연계됩니다. 자세한 내용은 AIP-65, AIP-66 참고.
기존 사용자들의 숙원이던 백필 지원이 대폭 향상되었습니다. UI나 API에서 백필을 시작하고, UI에서 모니터링할 수 있습니다. 이제 모든 백필이 스케줄러에서 관리돼 통제·확장성·진단이 좋아졌습니다. 자세한 내용은 AIP-78 참고.
Airflow 3의 핵심은 "어디서나, 어떤 언어로든 실행"입니다. Task Execution Interface(AIP-72)로 클라이언트-서버 아키텍처로 발전했으며, 멀티 클라우드·멀티 언어 지원이 가능해졌습니다. 기존 DAG에는 Python TaskSDK로 하위호환성을 제공합니다. Golang 등 추가 언어용 TaskSDK도 곧 출시 예정입니다.
엣지 디바이스 실행을 위한 Edge Executor(AIP-69)가 별도 제공됩니다. 초기 버전은 Airflow 2.x에서 실험적으로 나왔으나, 이제 Airflow 3 API 서버를 사용하도록 진화했습니다.
Airflow 3는 외부 이벤트와 외부 데이터 시스템에 의한 데이터 자산 변경에 반응할 수 있게 도약했습니다. "Introducing Data Assets"(AIP-74), "New Asset-Centric Syntax"(AIP-75) 등 AIP로 설계·도입되었습니다.
외부 이벤트 기반 스케줄링(AIP-82)은 AWS SQS 등 메시지 도착에 따라 DAG을 트리거하는 인터페이스와 구현체를 기본 제공합니다.
ML/AI 엔지니어는 이미 Airflow로 모델 학습 운영을 하고 있으나 Inference Execution엔 도전이 있었습니다. 데이터 인터벌 없는 DAG 지원(AIP-83) 등 개선을 통해 해소되었습니다.
Airflow 3 UI는 완전히 새로 만들어졌으며, Asset-지향/Task-지향 워크플로우가 자연스럽게 통합되고, 더욱 직관적인 사용자 경험을 제공합니다.
공식 문서의 스크린샷 참고.
새 UI는 REST API 및 FastAPI 기반의 UI Operations 내부 API(AIP-84)를 통해 구동됩니다. Grid, Graph 뷰 포함 사용자 경험이 대폭 향상됐고, Modern Web Application(AIP-38)에서 제안 설명됨.
또한 Flask AppBuilder는 이제 코어에서 분리된 독립 프로바이더 패키지로 변경되어 보안 및 유지관리 측면에서 개선되었습니다(AIP-79).
Task Execution Interface와 API 서버로 태스크 격리가 가능해졌습니다. 여러 팀이 하나의 Airflow를 사용할 때 보안을 한층 강화할 수 있고, 추가적인 보안·권한 패턴 개발에 토대가 됩니다.
CLI 개선도 이뤄졌습니다. Airflow CLI를 로컬 개발/하위 호환용과 API 기반 원격 접근용("airflowctl" 프로바이더 패키지, 선택 설치)으로 나눴습니다(AIP-81).
릴리즈를 이끌고 주요 AIP를 설계·개발한 핵심 공헌자: Ash Berlin-Taylor, Brent Bovenzi, Bugra Ozturk, Constance Martineau, Daniel Standish, Jed Cunningham, Jens Scheffler, Kaxil Naik, Pierre Jeambrun, Vincent Beck, Vikram Koka, 그리고 개발/패키징의 Jarek Potiuk, 프로바이더 관리의 Elad Kalif, 업그레이드 유틸리티의 Wei Lee, Ankit Chaurasia, 릴리즈 매니지먼트의 Jed Cunningham, Kaxil Naik에게 감사 드립니다!
릴리즈에 기여한 300여 명의 모든 글로벌 개발자에게 깊은 감사를 표합니다. (모든 기여자 명단 생략)
여러분의 피드백을 기다립니다. 에어플로우 3를 사용해 보고, 이슈를 올리고, PR 제출, 개발 리스트·Slack·GitHub에서 함께 의견을 나눠주세요. 함께 데이터 오케스트레이션의 미래를 만들어가요!