Airflow란?
Home
Platform created by the community to programmatically author, schedule and monitor workflows.
airflow.apache.org
● 개념
- - airflow는복잡한 계산을 요하는 작업흐름과 데이터 처리 파이프라인을 조율하기 위해 만들어진 오픈소스 도구
- - 길이가 긴 스크립트 실행을 cron으로 돌리거나 빅데이터 처리 배치 작업을 정기적으로 수행하려고 할 때 도움된다.
● 구성
- DAG (비순환 그래프)
- Operator (연산자)
- BashOperator
- PythonOperator
- ...etc
- Task (작업)
● 명명
- Airflow DAG 는 Task 로 구성된다.
- 각 Task는 Operator 클래스를 인스턴스화하여 만든다.
- DAG가 시작되면 Airflow는 데이터베이스에 DAG런 항목을 만든다.
- 특정 DAG런 맥락에서 Task를 실행하면 Task 인스턴스가 만들어진다.
- AIRFLOW_HOME 은 DAG 정의 파일과 Airflow 플러그인을 저장하는 디렉토리이다.
● 기본구조
AIRFLOW_HOME
airflow_home
├── airflow.cfg
├── airflow.db
├── dags
│ └── hello_world.py
│ └── test_operators.py <- Second DAG definition file
├── plugins
│ └── my_operators.py <- Your plugin file
└── unittests.cfg
● 참고자료
Stats Overflow
A Data Scientist's Tech Blog
aldente0630.github.io
'Architecture' 카테고리의 다른 글
MSA(Microservice Architecture) (0) | 2020.12.30 |
---|
댓글