강의
Backfill
"Backfill"은 실패한 데이터 파이프라인 혹은 이미 추출한 데이터의 오류로 인한 데이터 파이프라인 재실행을 말합니다.
- Full Refresh : 단순 재실행
- Incremental Update : 복잡 → Airflow Backfill 용이
날짜별 Backfill 결과 및 성공 여부 기록하여 ETL 인자로 제공합니다.
시스템이 지정해준 날짜 사용하면 Backfill을 구현할 수 있습니다.
Airflow Backfill 구현 방식
- ETL별 실행 날짜 및 결과 메타데이터 데이터베이스에 기록
- 모든 DAG 실행에 execution_date 지정
- 데이터 갱신하는 코드 작성
Backfill 관련 Airflow 변수
- start_date : DAG가 처음 추출해야하는 데이터의 날짜 및 시간
- execution_date : DAG가 추출해야하는 데이터의 날짜 및 시간
- catchup : DAG가 처음 활성화된 시점이 start_date보다 미래인 겨우 실행되지 않은 작업 실행 혹은 무시 결정
- end_date : airflow dags backfill -s ... -e ...
Backfill 실행 조건
- catchup = True
- execution_date 사용한 코드 구현
- 실행순서 랜덤 → 날짜순 지정 가능
default_args = {
'depends_on_past': True,
...
Backfill cmd 실행
airflow dags backfill dag_id -s backfill_start_date -e backfill_end_date
'데브코스 TIL > 데이터 파이프라인, Airflow' 카테고리의 다른 글
구글 시트 연동하기 (0) | 2024.01.03 |
---|---|
MySQL 테이블 복사하기 (0) | 2023.12.15 |
Primary Key Uniqueness 보장하기 (0) | 2023.12.14 |
Airflow DAG 작성 예제 4, 5 (0) | 2023.12.14 |
Airflow DAG 작성 예제 3 (0) | 2023.12.13 |