bq 도구를 사용하여 공개 데이터 세트 쿼리

bq 명령줄 도구를 사용하여 공개 데이터 세트를 검사하고 쿼리하는 방법을 알아봅니다.


Google Cloud 콘솔에서 이 태스크에 대한 단계별 안내를 직접 수행하려면 둘러보기를 클릭합니다.

둘러보기


시작하기 전에

  1. Google Cloud 계정에 로그인합니다. Google Cloud를 처음 사용하는 경우 계정을 만들고 Google 제품의 실제 성능을 평가해 보세요. 신규 고객에게는 워크로드를 실행, 테스트, 배포하는 데 사용할 수 있는 $300의 무료 크레딧이 제공됩니다.
  2. Google Cloud Console의 프로젝트 선택기 페이지에서 Google Cloud 프로젝트를 선택하거나 만듭니다.

    프로젝트 선택기로 이동

  3. Google Cloud Console의 프로젝트 선택기 페이지에서 Google Cloud 프로젝트를 선택하거나 만듭니다.

    프로젝트 선택기로 이동

  4. Google Cloud 프로젝트에 결제가 사용 설정되어 있는지 확인합니다.

  5. 이 튜토리얼에서 사용하는 Google Cloud 프로젝트에 결제를 사용 설정하지 않으면 BigQuery 샌드박스의 데이터를 사용합니다. BigQuery 샌드박스를 사용하면 제한된 BigQuery 기능 세트로 BigQuery를 무료로 학습할 수 있습니다.

  6. BigQuery API가 사용 설정되었는지 확인

    API 사용 설정

    새 프로젝트를 만들면 BigQuery API가 자동으로 사용 설정됩니다.

  7. Google Cloud 콘솔에서 Cloud Shell을 활성화합니다.

    Cloud Shell 활성화

    Google Cloud 콘솔 하단에서 Cloud Shell 세션이 시작되고 명령줄 프롬프트가 표시됩니다. Cloud Shell은 Google Cloud CLI가 사전 설치된 셸 환경으로, 현재 프로젝트의 값이 이미 설정되어 있습니다. 세션이 초기화되는 데 몇 초 정도 걸릴 수 있습니다.

공개 데이터 세트 검사

BigQuery는 쿼리할 수 있는 bigquery-public-data.samples 데이터 세트의 몇 가지 샘플 테이블을 제공합니다. 이 튜토리얼에서는 모든 셰익스피어 희곡의 모든 단어 항목이 포함된 shakespeare 테이블에서 쿼리를 실행합니다.

samples 데이터 세트에서 shakespeare 테이블을 검사합니다.

bq show bigquery-public-data:samples.shakespeare

출력은 다음과 비슷합니다. 출력을 간소화하기 위해 일부 열을 생략합니다.

  Last modified                  Schema                 Total Rows   Total Bytes
----------------- ------------------------------------ ------------ ------------
 14 Mar 17:16:45   |- word: string (required)           164656       6432064
                   |- word_count: integer (required)
                   |- corpus: string (required)
                   |- corpus_date: integer (required)

공개 데이터 세트 쿼리하기

bq query 명령어를 사용하여 데이터에서 SQL 쿼리를 실행합니다.

  1. 셰익스피어 작품에서 하위 문자열 raisin이 나타나는 횟수를 확인합니다.

    bq query --use_legacy_sql=false \
        'SELECT
          word,
          SUM(word_count) AS count
        FROM
          `bigquery-public-data.samples.shakespeare`
        WHERE
          word LIKE "%raisin%"
        GROUP BY
          word;'
    

    출력은 다음과 비슷합니다.

    +---------------+-------+
    |     word      | count |
    +---------------+-------+
    | praising      |     8 |
    | Praising      |     4 |
    | raising       |     5 |
    | dispraising   |     2 |
    | dispraisingly |     1 |
    | raisins       |     1 |
    +---------------+-------+
    
  2. 셰익스피어 작품에서 하위 문자열 huzzah를 검색합니다.

    bq query --use_legacy_sql=false \
        'SELECT
          word
        FROM
          `bigquery-public-data.samples.shakespeare`
        WHERE
          word = "huzzah";'
    

    셰익스피어의 작품에는 이 하위 문자열이 표시되지 않으므로 결과가 반환되지 않습니다.

삭제

이 페이지에서 사용한 리소스 비용이 Google Cloud 계정에 청구되지 않도록 하려면 리소스가 포함된 Google Cloud 프로젝트를 삭제하면 됩니다.

프로젝트 삭제

BigQuery 샌드박스를 사용하여 공개 데이터 세트를 쿼리한 경우에는 프로젝트에 결제가 사용 설정되지 않습니다.

비용이 청구되지 않도록 하는 가장 쉬운 방법은 튜토리얼에서 만든 프로젝트를 삭제하는 것입니다.

프로젝트를 삭제하는 방법은 다음과 같습니다.

  1. Google Cloud 콘솔에서 리소스 관리 페이지로 이동합니다.

    리소스 관리로 이동

  2. 프로젝트 목록에서 삭제할 프로젝트를 선택하고 삭제를 클릭합니다.
  3. 대화상자에서 프로젝트 ID를 입력한 후 종료를 클릭하여 프로젝트를 삭제합니다.

다음 단계