Data engineering/Batch&Pipeline
-
crontab 이용하여 공공 api 데이터를 빅쿼리에 적재Data engineering/Batch&Pipeline 2023. 8. 21. 21:57
필자는 aws에 공공 api 를 이용하여 데이터를 전처리 -> 빅쿼리 적재 까지 완료 하였으나, 배치 관련해서 계속 테스트 중이었다. 어제, 오늘 crontab 설정 준비 및 테스트를 하였고, 드디어 오늘 배치를 실행하여 빅쿼리 적재에 성공하였다. 먼저 배포 후 간과하지 않아야 할 것은 1. .env 파일 및 service key를 꼭 넣어 줄것 2. 환경 변수 설정 신경 쓸것! 위 2가지만 주의 한다면 서버에서 배치가 잘 실행 될 것이다! 그리고 로그 확인 및 빅쿼리를 확인하여 볼 수 있다. 적재 시작 뒤, 빅쿼리의 query_job이 잘 생성되었는지 print 한 것이 잘 나와 있었다. -> 보통 error가 발생하면 cronlog.txt에서 확인 할 수 있는데 확인 되지 않았다! -> 성공 그리고 ..
-
배치 파일을 배포하기 위한 스크립트 파일 작성하기Data engineering/Batch&Pipeline 2023. 8. 20. 16:38
필자는 공공 API를 이용(2023년 전/월세 데이터) 하여 빅쿼리에 초기 적재를 하였다. 이것을 aws에 배포하기 위해 실행 파일 = script를 만들었다. (프로젝트에서 참고 해서 만듬!) 먼저, 환경 python이나 requirements.txt를 설치하기 위한 setting.sh를 작성했다. #!/bin/bash echo "- program : batch" echo "- pwd : ${PWD}/${0}" echo "- job : init setting" DIR="$( cd "$( dirname "$0" )" && pwd )" VENV_DIR="${DIR}/.venv" REQUIREMENT_DIR="${DIR}/requirement.txt" if [ -e "$VENV_DIR" ]; then #ec..
-
초기 데이터 적재 - Google Cloud Storage 업로드 하기Data engineering/Batch&Pipeline 2023. 7. 4. 14:27
필자는 개인 프로젝트로 GCP를 이용하여 샘플데이터를 로컬에서 Google Cloud Storage에 업로드 하는 파이프라인에 대해 기술하려고 한다. 초기 데이터가 잘 적재되었다면, 서버에 배포하여 배치 작업까지 개발 할 예정이다. (shell script를 이용 할 예정) 먼저, 구조는 아래와 같다. python main.py args -> 와 같은 명령어를 통해 실행시킬 예정 그래서 main.py를 밖에 두고, 그 외는 project 폴더 속에 만들었다. 초기 적재라는 목적을 가진 py의 이름은 initial_data.py라고 만들었다. 그리고 main에서 호출하기 쉽도록, class로 만들어 주었다. # 초기 로깅 셋팅 logger = logging.getLogger("info") errLogger..