(사진은 회사 보안으로 첨부하지 않았습니다)
CM이란? (content module)는 외부에서 수집, 제공된 raw data를 가공하여 python data api 형태로 제공되는 플랫폼내 data 제공 방식
1. cm 제작 과정
index 업종 코드표 업로드
- index의 업종 코드표 엑셀 시트를 읽고 json형식으로 S3에 저장
- market, issuecode, kor_str 정보가 있음
api request 후 데이터 저장 전처리
- api request의 결과를 locdick에 저장
- GET /v3/market/closed/index/{marketcode}/{issuecode}/history 쿼리문 사용
- history 쿼리가 live 쿼리보다 더 많은 정보를 제공해, history 쿼리만 사용
- api 호출량 count 리팩토링 진행하면서 limit 초과 이슈도 방지하고자 하였음
- locdisk에 저장된 데이터들을 불러와서 cm에 맞는 형식으로 고친 후, S3에 업로드 진행
loader
- cm을 load하는 파일에 코드 추가, loader 코드를 작성
- 하지만, index의 issuecode는 db에 등록하지 않아서 이슈 코드를 mapping하는 등과 같은 함수들은 에러가 발생함 (추후에 db 등록 해야함)
validation
- cm이 db에 존재하는지
- nan 값에 대한 정보
- item에 row/column/nan 값을 넣으면, 이를 기준으로 확인
- row: nan값이 존재하는 날짜 출력
- column: nan 값이 존재하는 issuecode 출력
- nan: nan 값이 존재하는 날짜와 issuecode 출력 (default)
- index에 trading day가 잘 들어갔는지 확인
- index가 하루 단위인지 확인
- 입력한 특정 구간의 인덱스 값에 빠져 있는 trading day가 있는지 확인