https://airflow.apache.org/docs/apache-airflow/stable/core-concepts/overview.html
Workflow를 빌드하고 실행할 수 있는 플랫폼
일반적으로 반복 작업을 자동화하기 위해 사용한다.
Workflow 안에 여러 개의 작업들을 넣어서 빌드하게 되면, 이 작업들을 굳이 하나하나 실행할 필요가 없어진다
하나의 Workflow만 실행하게 되면 전체 작업과 작업 중 발생하는 오류에 따른 흐름까지 처리가 가능하기 때문이다.
Airflow에서는 Workflow를 DAG(Directed Acyclic Graph)로 표현한다.
DAG에 우리가 하고자 하는 작업들을 순서에 맞게, 조건에 맞게 배치하고 빌드할 수 있다.
DAG는 각 작업이 어떤 일을 하는지는 신경쓰지 않는다
대신 작업의 순서, 오류 발생 시 재시도 횟수, 시간 초과 여부, 수행 주기 등 작업의 실행 방법에 대해서만 관심이 있다.
https://airflow.apache.org/docs/apache-airflow/stable/stable-rest-api-ref.html
Airflow는 각 DAG를 REST API로 만들어 Airflow 외부에서도 수행 요청을 보낼 수 있도록 한다.
REST API는 Representational State Transfer API로 클라이언트와 서버 간의 두 컴퓨터 시스템이 인터넷을 통해 정보를 안전하게 교환하기 위해 사용하는 인터페이스라고 생각하면 된다.
REST API는 FE - BE 간 통신에서도 사용된다. 여기서 FE가 클라이언트, BE가 서버이다