Encore-final-team-project / Dynamic-Indices-cluster

Bigdata Clustering with Blanace Sheet and Stocks
Eclipse Public License 2.0
2 stars 1 forks source link

Airflow backfill 설정하기 #31

Open sq1017 opened 9 months ago

sq1017 commented 9 months ago
  1. airflow 서버 오동작으로 인해 web_fs DB에 있던 data가 모두 delete 되어버린 현상이 있었어요. 추정하기로는 재무제표 파이썬 스크립트에서 오류를 발생시킨 듯 합니다. finance database에서 data를 Transport & Load 하기 전, 중복 데이터가 적재되는 것을 막기 위해 한 번 기존에 있던 data들을 delete하는 로직을 걸어 두었는데 해당 현상은 delete 로직을 main 함수 안으로 감싸 줌으로써 해결되었습니다!

  2. 주가 데이터의 경우에도 비슷한 이슈가 있었습니다. airflow로 걸어둔 stock DAG에서는 하루치의 주가 데이터만 받아오기에, WEB에서 표출해주어야 하는 데이터의 양이 부족해지는 일이 있었어요. 지난달부터 30일 동안 stock data가 쌓였던 것으로 칠 수는 없을까, 고민하던 차에, airflow backfill의 효용성을 알게 되었습니다.

sq1017 commented 9 months ago

현재 구현해둔 airflow backfill 설정은 따로 스케줄링을 해두지 않고 비동기 식으로 돌아가며, backfill dag를 따로 지정해 두었어요. airflow webserver UI를 통해 확인하실 수 있습니다.

스크린샷 2023-09-19 오후 9 16 55

원하는 시작 날짜와 끝 날짜를 dag 정의 상에서 지정해준 후, dag를 수동으로 trigger 걸어주면 backfill DAG가 동작하면서 지정한 날짜동안의 stock data를 해당 날짜 기준으로 적재해 줍니다. 이 dag를 통해 과거의 주가 데이터를 불러오고 싶을 경우 해당 날짜동안의 주가 데이터를 따로 뽑아줄 수 있었어요.