Backfill

airflow backfill DAG이름 -s 20180701 -e 20180731

모든 데이터를 backfill할 필요 없음. 데이터 작으면 full refresh 하자 ㅋ

full refresh가 아니면 Incremental Update를 해야한다.

  1. 가장 최근 시각의 레코드나 가장 큰 레코드 ID를 기반으로 구현
  2. 일 별 혹은 시간 별로 업데이트

Lesson Learned

  1. DAG와 SQL을 분리하기. SQL을 Variable로 관리하면 정말 변경하기 쉽지만, 변경이력이 안남아서 힘듬.. 중요한 SQL은 코드로 관리하기
  2. DAG에 Versioning하기
  3. 데이터가 크지 않으면 Full Refresh하는 게 정신건강에 좋음