Airflow Task SDK 도입으로 Dag 코드와 내부 구현을 분리하여 버전 호환성을 확보함
Supervisor-Task Runner 구조를 통해 언어 독립적 실행을 지원하는 기반을 마련함
Worker가 DB에 직접 접근하지 않고 Execution API를 통해 통신하도록 변경하여 보안 강화
Task SDK는 Supervisor와 Task Runner로 구성되어 Airflow 내부 구현과 Dag 코드를 분리한다. Task Runner는 격리된 환경에서 사용자 Task를 실행하고, Supervisor는 Airflow와 통신하며 실행 관리, XCom 처리 등을 담당한다. 따라서 Airflow 업그레이드 시 Dag 코드 변경 없이 안정적인 운영이 가능하다.
Task SDK는 Dag 코드와 Airflow 내부 구현의 결합도를 낮춰 문제를 해결한다. 을 지원하여 Python 외에도 R, Java, Go 등 다양한 언어로 Task 작성이 가능해진다. 결과적으로 을 확보하고, 을 향상시킬 수 있다.
Airflow Task SDK 도입으로 Worker가 Airflow 메타데이터 DB에 직접 접근하는 방식이 변경되었다. Execution API를 통해 Supervisor와 통신하며 DB에 접근하도록 설계되어 보안을 강화했다. 따라서 Airflow 2.x에서 3.x로 업그레이드 시 DB 접근 방식에 대한 주의가 필요하다.