bq ツールを使用して一般公開データセットにクエリを実行する
bq コマンドライン ツールを使用して一般公開データセットを調べてクエリを実行する方法を学習します。
このタスクを Google Cloud コンソールで直接行う際の順を追ったガイダンスについては、「ガイドを表示」をクリックしてください。
準備
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。
-
Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。
BigQuery API が有効になっていることを確認します。
新しいプロジェクトを作成している場合は、BigQuery API が自動的に有効になっています。
-
Google Cloud コンソールで、「Cloud Shell をアクティブにする」をクリックします。
Google Cloud コンソールの下部で Cloud Shell セッションが開始し、コマンドライン プロンプトが表示されます。Cloud Shell はシェル環境です。Google Cloud CLI がすでにインストールされており、現在のプロジェクトの値もすでに設定されています。セッションが初期化されるまで数秒かかることがあります。
このチュートリアルで使用する Google Cloud プロジェクトの課金を有効にしない場合は、BigQuery サンドボックスでデータを操作します。BigQuery サンドボックスを使用すると、一部の BigQuery 機能を無料で使用して、BigQuery を試すことができます。
一般公開データセットを調べる
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 クエリを実行します。
シェイクスピアの作品に出現する部分文字列
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 | +---------------+-------+
シェイクスピアの作品で部分文字列
huzzah
を検索します。bq query --use_legacy_sql=false \ 'SELECT word FROM `bigquery-public-data.samples.shakespeare` WHERE word = "huzzah";'
この部分文字列はシェイクスピアの作品には出現しないため、結果は返されません。
クリーンアップ
このページで使用したリソースについて、Google Cloud アカウントに課金されないようにするには、Google Cloud プロジェクトとそのリソースをまとめて削除してください。
プロジェクトを削除する
BigQuery サンドボックスを使用して一般公開データセットにクエリを実行した場合、プロジェクトに対する課金は有効になりません。課金をなくす最も簡単な方法は、チュートリアル用に作成したプロジェクトを削除することです。
プロジェクトを削除するには:
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
次のステップ
- bq ツールの使用の詳細を確認する。
- BigQuery サンドボックスについて学習する。
- BigQuery の一般公開データセットについて詳細を学習する。
- データを BigQuery に読み込む方法を確認する。
- BigQuery でのデータのクエリについて詳細を学習する。
- BigQuery に関する最新情報を確認する。
- BigQuery の料金を確認する。
- BigQuery の割り当てと上限について学習する。