Google Spreadsheets(Sheets)에서 BigQuery 사용하기


  • 스프레드시트에서 BigQuery를 사용해 데이터를 추출하는 방법에 대해 작성한 글입니다
    • OWOX를 사용하는 방법
    • Data Connectors를 사용하는 방법

BigQuery

  • BigQuery는 Google Cloud Platform의 Data Warehouse 제품
  • 관련된 내용은 BigQuery의 모든 것 발표 자료에 많이 나와있음

Spreadsheet

  • 스프레드시트는 구글의 제품으로 우리가 친숙한 엑셀과 비슷한 구조를 가지고 있음
  • 스프레드시트에서 간단한 시각화, 피벗 테이블 등 데이터를 가공할 수 있음

BigQuery + Spreadsheet

  • 매일 특정 쿼리를 날려 데이터를 추출하고 싶을 경우 BigQuery의 스케쥴 쿼리를 사용하거나, Python를 사용해 데이터를 추출할 수 있음
    • 개발에 친화적인 사람이라면 위 방법도 편리하지만, 개발에 친화적이지 않은 사람들은 스프레드시트를 사용하는 방법이 더 친숙
  • 2가지 방법
    • OWOX를 사용하는 방법 (부가기능, Add-ons)
    • Data Connectors를 사용하는 방법
      • G Suite Business 고객만 사용할 수 있음
      • 결과를 10,000행까지 받을 수 있음

OWOX 사용 방법

  • 1) 스프레드시트에서 부가기능(Add-ons) 추가
    • sheet.new로 새로운 스프레드시트로 접속한 후, 상단의 부가기능을 클릭
    • 부가기능 검색창에 OWOX를 검색
    • 스크린샷 2019-07-20 13 52 39
    • OWOX BI BigQuery Reports의 오른쪽에 있는 추가 버튼 클릭(+ 무료)
    • 스크린샷 2019-07-20 13 53 15
    • Google 로그인 후, OWOX BI BigQuery Reports이(가) 내 Google 계정에 액세스하려고 합니다 라는 부분에서 허용을 클릭
      • 만약 BigQuery API가 활성화되어 있지 않다면 확인창이 추가로 뜨는데, 확인 누르면 됨
  • 2) 부가기능 활성화
    • 스프레드시트에서 부가기능 - 부가기능 관리 클릭
    • 부가기능 - OWOX BI BigQuery Reports이 보인는지 확인
    • 스크린샷 2019-07-20 13 55 18
  • 3) 쿼리 날리기(=데이터 추출하기)
    • 부가기능 - OWOX BI BigQuery Reports - Add a report 클릭
    • 스크린샷 2019-07-20 20 06 17
    • create 클릭
    • 스크린샷 2019-07-20 20 08 11
    • 이 부분에 쿼리를 작성! 단, 쿼리를 작성할 때 #stadardSQL인지 #legacySQL인지 명시해줘야 함
    • Save & Run 클릭
    • 결과가 스프레드시트의 새로운 시트로 저장됨
    • 쿼리의 결과를 Report라고 부름
  • 4) 쿼리 수정하기
    • Select a query에 있는 쿼리를 선택한 후 Edit 클릭해 수정할 수 있음
    • Revision history를 확인하면 예전에 사용한 쿼리를 볼 수 있음
  • 5) 파라미터 설정하기
    • How to add parameters?를 클릭하면 파라미터를 동적으로 사용하는 방법에 대해 알려줌
    • Input 입력하는 방식, 날짜를 선택하는 방식, 리스트에서 선택하는 방식이 가능
  • 6) 이미 작성된 레포트를 수정하고 싶은 경우
    • Edit current report 클릭 후 수정
    • 스크린샷 2019-07-20 21 20 29
  • 7) 데이터를 최신화하고 싶은 경우
    • Refresh currernt report 클릭 (현재 레포트만 수정)
    • Refresh all reports 클릭 (모든 레포트 수정)
  • 8) 쿼리를 주기적으로 돌리고 싶은 경우(스케쥴링)
    • Schedule reports 클릭
    • Enable reports to run automatically 클릭
    • Schedule reports to run every day between 4 am - 5am 에서 빈도와 시간대를 설정
      • 이 시간대는 스프레드시트의 시간대에 따라 달라지는데, 파일 - 스프레드시트 설정을 통해 현재 스프레드시트의 시간대를 확인할 수 있음
    • Execute all configured reports 클릭을 해제하면 여러 Report 중 어떤 것을 스케쥴링할지 선택할 수 있음
    • Receive email notification을 실패할 때 메일 받거나 매번 메일을 받는 옵션을 설정할 수 있음
    • I understand Google BigQuery query pricing policy를 체크해야 함
      • BigQuery는 쿼리를 날릴 때마다 비용이 부과되기 때문에 이 점을 꼭 유의해야함
    • 스크린샷 2019-07-20 20 44 37

Data Connector 사용 방법

  • 이건 일반 계정에선 보이지 않고 G Suite Business를 사용하는 계정에서만 보임(19.7.20 기준이며, 추후에 변경될 수 있습니다)
  • 1) 데이터 연결
    • 데이터 - 데이터 커넥터 클릭
    • 스크린샷 2019-07-20 20 46 45
  • 2) 쿼리 날리기(=데이터 추출하기)
    • 데이터 연결할 프로젝트 선택한 후, 쿼리 작성 클릭
    • 스크린샷 2019-07-20 20 49 21
    • 결과 미리보기를 진행한 후, 결과 삽입을 클릭하면 데이터가 추가됨
  • 3) 쿼리 수정
    • 데이터 하단에 있는 새로고침이나 버튼을 클릭하면 수정할 수 있음
    • 스크린샷 2019-07-20 20 51 19

뭘 사용할까?

  • 취향의 차이가 존재할 수 있으나 아직(19.07.20 기준) OWOX가 조금 더 기능이 우세(스케쥴링 기능, 메일 전송)
  • Data Connector는 추출할 Row 수가 아직 최대 10,000개까지만 가능한 점이 아쉬움(OWOX는 메모리 상황에 따라 다르지만 10,000개 이상도 가능)
    • 또한 Data Connector는 G Suite를 사용해야 생기는 기능
  • 따라서 보통의 경우엔 OWOX를 사용하는 것을 추천드립니다 :)

Reference


카일스쿨 유튜브 채널을 만들었습니다. 데이터 사이언스, 성장, 리더십, BigQuery 등을 이야기할 예정이니, 관심 있으시면 구독 부탁드립니다 :)

PM을 위한 데이터 리터러시 강의를 만들었습니다. 문제 정의, 지표, 실험 설계, 문화 만들기, 로그 설계, 회고 등을 담은 강의입니다

이 글이 도움이 되셨거나 다양한 의견이 있다면 댓글 부탁드립니다 :)

Buy me a coffeeBuy me a coffee





© 2017. by Seongyun Byeon

Powered by zzsza