[최종] 230809

data_hamster·2023년 8월 9일
0

목표.

API를 호출하여 redshift 적재하기.
기존 실습 redshift 계정을 활용하여, 적재에 성공함.

이슈와 해결

API 호출제한이 있었음. 1분에 5분 제한으로 한번에 호출하는데 제약 발생.

  • 다른 API를 탐색. 모듈이 각 사이트를 크롤링하여 값 반환함.
  • 약 2천개 정도에서 호출에러 발생.

API를 호출하여 데이터프레임으로 만드는 과정이 다소 시간이 걸렸음

  • from concurrent.futures import ProcessPoolExecutor
  • 처음에 ThreadPoolExecutor를 사용하였으나, 이는 성능 개선에 큰 영향을 미치지 않음. 민동님.
  • 이에 ProcessPool로 바꾸었더니 상당한 시간개선 발생.

멀티프로세스의 경우 함수화 필요 이에 레드쉬프트 적재하는 것도 함수로.

  • S3_to_redshift 함수로 변환
profile
반갑습니다 햄스터 좋아합니다

1개의 댓글

comment-user-thumbnail
2023년 8월 9일

즐겁게 읽었습니다. 유용한 정보 감사합니다.

답글 달기