© 2017 by Doran Bae 

Subscribe!
You are reading Coding Otter, stuffed with articles about big data, data science development, ML in production, managing data science projects, and many more. ​
About the host
I'm Doran Bae, Data Scientist @TVB turning data into products and stories. More about me.

인문계를 위한 importing data on Big Query to local Jupyter Notebook

Updated: Nov 27, 2018

Official documentation는 여기 참고


데이터 프로젝트의 모든 시작은 데이터 import로 부터 시작해요. Google Big Query는 여러모로 굉장히 편한 데이터 테이블이라 저는 아주 즐겨 사용합니다. Big Query 데이터를 Jupyter notebook으로 가져 오는 작업은 생각보다 쉽죠 😎. 일단 작업 환경에 Jupyter notebook을 install된 상태여야 하고, GCP Account가 있어야 합니다. 혹시 Jupyter notebook을 처음 설치 하는 경우라면, 인문계를 위한 Python environment 세팅을 참고해 주세요. 기본 프로세스는 아래와 같고, 5분도 안 걸려서 작업 완료 가능합니다.

  • Get credentials

  • Set path

  • Install library

1. Get credentials

어느 communication이 그렇듯, Google Big Query는 누가 접속하는지 알아야 합니다. 그러기에 신청자에 한해서 key를 주고, 사용자는 그 키를 사용해서 접속을 합니다. Google Console의 Create service account key 페이지로 가서 아래와 같이 key 신청서를 작성 후 Create 버튼을 누릅니다.

그러면 json 파일 하나가 컴퓨터로 다운받아 집니다. 이 파일이 키인데 본인이 실수로 삭제하지 않을 위치에 옮겨 놓습니다.

2. Set path

Terminal을 열고 아래와 같이 작성하여 execute 합니다.

$ export GOOGLE_APPLICATION_CREDENTIALS="FILE_PATH/KEY_FILE_NAME.json"

3. Install Big Query Python client library

$ pip install --upgrade google-cloud-bigquery[pandas]

끝 입니다!

4. 테스트

Python으로 들어가서 다음 명령어를 실행시켜 제대로 된 값이 return 되는지 확인해 보세요 :)

>> %load_ext google.cloud.bigquery
>> %%bigquery
>> SELECT
...source_year AS year,
...COUNT(is_male) AS birth_count
...FROM `bigquery-public-data.samples.natality`
...GROUP BY year
...ORDER BY year DESC
...LIMIT 15