Query a public dataset in BigQuery

進行状況を確認

/ 50

Rerun your Query

進行状況を確認

/ 50

このラボでは、学習をサポートする AI ツールが組み込まれている場合があります。

GSP651

Google Cloud セルフペース ラボ

概要

このラボでは、割り当てを変更して BigQuery の費用を管理する方法について学びます。

演習内容

  • 一般公開データセットに対してクエリを実行し、関連する費用を調べる。
  • 割り当てを変更する。
  • 割り当てを変更してもクエリを実行できるか調べる。

BigQuery の料金

BigQuery には、技術的なニーズと予算に合わせて選べるさまざまな料金オプションが用意されています。

BigQuery を使用するとストレージの費用とクエリの費用が発生します。このラボでは、クエリの費用について学習します。詳細については、BigQuery の料金をご覧ください。

BigQuery のクエリ費用には次の 2 種類の料金モデルがあります。

  • オンデマンド: オンデマンド料金は、実行した各クエリで処理されたデータの量に基づいて計算されます。これは最も柔軟なオプションです。

  • 定額: 定額料金の場合、お客様はクエリ処理用の専用リソースを購入し、個々のクエリについては課金されません。このオプションでは料金が予測可能なため、予算が固定されているお客様に最適です。

設定

このセクションでは、Google Cloud コンソールと BigQuery コンソールにアクセスします。

[ラボを開始] ボタンをクリックする前に

こちらの説明をお読みください。ラボには時間制限があり、一時停止することはできません。タイマーは、Google Cloud のリソースを利用できる時間を示しており、[ラボを開始] をクリックするとスタートします。

このハンズオンラボでは、シミュレーションやデモ環境ではなく実際のクラウド環境を使って、ラボのアクティビティを行います。そのため、ラボの受講中に Google Cloud にログインおよびアクセスするための、新しい一時的な認証情報が提供されます。

このラボを完了するためには、下記が必要です。

  • 標準的なインターネット ブラウザ(Chrome を推奨)
注: このラボの実行には、シークレット モード(推奨)またはシークレット ブラウジング ウィンドウを使用してください。これにより、個人アカウントと受講者アカウント間の競合を防ぎ、個人アカウントに追加料金が発生しないようにすることができます。
  • ラボを完了するための時間(開始後は一時停止できません)
注: このラボでは、受講者アカウントのみを使用してください。別の Google Cloud アカウントを使用すると、そのアカウントに料金が発生する可能性があります。

ラボを開始して Google Cloud コンソールにログインする方法

  1. [ラボを開始] ボタンをクリックします。ラボの料金をお支払いいただく必要がある場合は、表示されるダイアログでお支払い方法を選択してください。 右側の [ラボの設定とアクセス] パネルには、以下が表示されます。

    • [Google Cloud コンソールを開く] ボタン
    • このラボで使用する一時的な認証情報(ユーザー名とパスワード)
    • このラボを行うために必要なその他の情報(ある場合)

    ラボのタイマーはページの上部に表示され、残り時間が示されます。

  2. [Google Cloud コンソールを開く] をクリックします(Chrome ブラウザを使用している場合は、右クリックして [シークレット ウィンドウで開く] を選択します)。

    ラボでリソースがスピンアップし、別のタブで [ログイン] ページが表示されます。

    ヒント: タブをそれぞれ別のウィンドウで開き、並べて表示しておきましょう。

    注: [アカウントの選択] ダイアログが表示された場合は、[別のアカウントを使用] をクリックします。
  3. 必要に応じて、下のユーザー名をコピーして、[ログイン] ダイアログに貼り付けます。

    {{{user_0.username | "Username"}}}

    [ラボの設定とアクセス] パネルでもユーザー名を確認できます。

  4. [次へ] をクリックします。

  5. 以下のパスワードをコピーして、[ようこそ] ダイアログに貼り付けます。

    {{{user_0.password | "Password"}}}

    [ラボの設定とアクセス] パネルでもパスワードを確認できます。

  6. [次へ] をクリックします。

    重要: ラボで指定された認証情報を使用する必要があります。ご自身の Google Cloud アカウントの認証情報は使用しないでください。 注: このラボでご自身の Google Cloud アカウントを使用すると、追加料金が発生する場合があります。
  7. その後のページはクリックして先に進みます。

    • 利用規約に同意します。
    • 一時的なアカウントなので、復元オプションや 2 要素認証プロセスは設定しないでください。
    • 無料トライアルには登録しないでください。

しばらくすると、このタブで Google Cloud コンソールが開きます。

注: Google Cloud のプロダクトやサービスにアクセスするには、ナビゲーション メニューをクリックするか、[検索] フィールドにサービス名またはプロダクト名を入力します。 ナビゲーション メニューのアイコンと検索フィールド

Cloud Shell をアクティブにする

Cloud Shell は、開発ツールと一緒に読み込まれる仮想マシンです。5 GB の永続ホーム ディレクトリが用意されており、Google Cloud で稼働します。Cloud Shell を使用すると、コマンドラインで Google Cloud リソースにアクセスできます。

  1. Google Cloud コンソールの上部にある「Cloud Shell をアクティブにする」アイコン 「Cloud Shell をアクティブにする」アイコン をクリックします。

  2. ウィンドウで次の操作を行います。

    • Cloud Shell 情報ウィンドウで操作を進めます。
    • Cloud Shell が認証情報を使用して Google Cloud API を呼び出すことを承認します。

接続した時点で認証が完了しており、プロジェクトに各自の Project_ID が設定されます。出力には、このセッションの PROJECT_ID を宣言する次の行が含まれています。

Your Cloud Platform project in this session is set to {{{project_0.project_id | "PROJECT_ID"}}}

gcloud は Google Cloud のコマンドライン ツールです。このツールは、Cloud Shell にプリインストールされており、タブ補完がサポートされています。

  1. (省略可)次のコマンドを使用すると、有効なアカウント名を一覧表示できます。
gcloud auth list
  1. [承認] をクリックします。

出力:

ACTIVE: * ACCOUNT: {{{user_0.username | "ACCOUNT"}}} To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. (省略可)次のコマンドを使用すると、プロジェクト ID を一覧表示できます。
gcloud config list project

出力:

[core] project = {{{project_0.project_id | "PROJECT_ID"}}} 注: Google Cloud における gcloud ドキュメントの全文については、gcloud CLI の概要ガイドをご覧ください。

BigQuery コンソールを開く

  1. Google Cloud コンソールで、ナビゲーション メニュー > [BigQuery] を選択します。

[Cloud コンソールの BigQuery へようこそ] メッセージ ボックスが開きます。このメッセージ ボックスには、クイックスタート ガイドとリリースノートへのリンクが表示されます。

  1. [完了] をクリックします。

BigQuery コンソールが開きます。

タスク 1. BigQuery で一般公開データセットに対してクエリを実行する

このラボでは、一般公開データセットの bigquery-public-data:wise_all_sky_data_release に対してクエリを実行します。このデータセットの詳細については、ブログ投稿「BigQuery GIS による天文データのクエリ」をご覧ください。

  1. 次のクエリをコピーしてクエリエディタに貼り付けます。

    SELECT w1mpro_ep, mjd, load_id, frame_id FROM `bigquery-public-data.wise_all_sky_data_release.mep_wise` ORDER BY mjd ASC LIMIT 500
  2. クエリは実行せずに次の質問に答えてください。

費用を適切に管理しないと、上のような単純なクエリでも大量のデータが処理されて、予想外の金額を請求される可能性があります。こうしたことに対処するために、BigQuery の料金の仕組みと、チームに対してカスタム割り当てを設定する方法を確認します。

  1. クエリを実行します。BigQuery では、このサイズのデータもすぐに処理されます。

[進行状況を確認] をクリックして目標に沿って進んでいることを確認します。

BigQuery で一般公開データセットに対してクエリを実行する

タスク 2. クエリ費用を調べる

処理されるクエリデータは毎月 1 TB まで無料です。

タスク 3. BigQuery の割り当てを更新する

このタスクでは、プロジェクト内のクエリで処理されるデータを制限するために、BigQuery API の割り当てを更新します。

  1. Cloud Shell で次のコマンドを実行し、BigQuery API で現在の使用量の割り当てを表示します。
gcloud alpha services quota list --service=bigquery.googleapis.com --consumer=projects/${DEVSHELL_PROJECT_ID} --filter="usage"

consumerQuotaLimits が現在の 1 日あたりのクエリ数の上限を表示します。プロジェクトごとの使用量ユーザーごとの使用量には別の割り当てがあります。

  1. 次のコマンドを Cloud Shell で実行し、ユーザーごとの割り当てを 1 日あたり .25 TiB に更新します。
gcloud alpha services quota update --consumer=projects/${DEVSHELL_PROJECT_ID} --service bigquery.googleapis.com --metric bigquery.googleapis.com/quota/query/usage --value 262144 --unit 1/d/{project}/{user} --force
  1. 割り当てを更新した後、再び consumerQuotaLimits を確認します。
gcloud alpha services quota list --service=bigquery.googleapis.com --consumer=projects/${DEVSHELL_PROJECT_ID} --filter="usage"

以前と同じ上限が表示されますが、前のステップで使用した値が入った consumerOverride も表示されます。

--- consumerQuotaLimits: - metric: bigquery.googleapis.com/quota/query/usage quotaBuckets: - defaultLimit: '9223372036854775807' effectiveLimit: '9223372036854775807' unit: 1/d/{project} - metric: bigquery.googleapis.com/quota/query/usage quotaBuckets: - consumerOverride: name: projects/33699896259/services/bigquery.googleapis.com/consumerQuotaMetrics/bigquery.googleapis.com%2Fquota%2Fquery%2Fusage/limits/%2Fd%2Fproject%2Fuser/consumerOverrides/Cg1RdW90YU92ZXJyaWRl overrideValue: '262144' defaultLimit: '9223372036854775807' effectiveLimit: '262144' unit: 1/d/{project}/{user} displayName: Query usage metric: bigquery.googleapis.com/quota/query/usage unit: MiBy

次に、更新した割り当てでクエリを再実行します。

タスク 4. クエリを再実行する

  1. Cloud コンソールで、[BigQuery] をクリックします。

  2. 先ほど実行したクエリがまだクエリエディタに残っているはずですが、残っていない場合は次のクエリをクエリエディタに貼り付けてから、[実行] をクリックします。

    SELECT w1mpro_ep, mjd, load_id, frame_id FROM `bigquery-public-data.wise_all_sky_data_release.mep_wise` ORDER BY mjd ASC LIMIT 500

    クエリ検証ツールには先ほどと同じように「このクエリを実行すると、1.36 TB が処理されます」と表示されますが、クエリは正常に実行され、データは一切処理されません。なぜでしょう。

注: クエリがカスタム割り当てによってすでにブロックされていても心配は無用です。これはおそらく、カスタム割り当てを設定して最初のクエリが結果をキャッシュに保存する前にクエリを再実行したためです。

キャッシュに保存されているクエリ結果を使用するクエリには追加の費用はかからず、割り当ての計算にも含まれません。キャッシュに保存されたクエリ結果の使用方法について詳しくは、キャッシュに保存されているクエリ結果を使用するをご覧ください。

新しく設定された割り当てをテストできるよう、クエリ キャッシュを無効にし、前のクエリを使用してデータを処理する必要があります。

  1. 割り当てが変更されたことをテストするために、キャッシュに保存されているクエリ結果を無効にします。[クエリエディタ] ペインで、[その他] > [クエリ設定] をクリックします。

[その他] プルダウン メニューでハイライト表示されている [クエリ設定] オプション

  1. [キャッシュされた結果を使用] のチェックボックスをオフにして、[保存] をクリックします。

  2. 再びクエリを実行します。今度は 1 日の割り当て計算に含まれるはずです。

  3. クエリが正常に実行されて 1.36 TB のデータが処理されたら、もう一度クエリを実行します。

    どうなりましたか?クエリを実行できましたか?次のようなエラーが表示されるはずです。

    Custom quota exceeded: Your usage exceeded the custom quota for QueryUsagePerUserPerDay, which is set by your administrator. For more information, see https://cloud.google.com/bigquery/cost-controls

[進行状況を確認] をクリックして目標に沿って進んでいることを確認します。

クエリを再実行する

タスク 5. BigQuery のベスト プラクティスを確認する

割り当てを使用すると費用を管理できますが、チームにとって適切な割り当ては業務によって異なります。ここで紹介したのは、予想外の費用を避けるために割り当てを設定する方法の一例です。クエリで処理されるデータの量を減らすための方法の一つに、クエリの最適化があります。

BigQuery クエリの最適化の詳細については、BigQuery での費用管理ガイドをご覧ください。

お疲れさまでした

このラボでは、次のタスクを実行しました。

  • 一般公開データセットに対してクエリを実行し、関連する費用を調べました。
  • BigQuery API の割り当てを変更しました。
  • 割り当てを変更してもクエリを実行できるか調べました。

Google Cloud トレーニングと認定資格

Google Cloud トレーニングと認定資格を通して、Google Cloud 技術を最大限に活用できるようになります。必要な技術スキルとベスト プラクティスについて取り扱うクラスでは、学習を継続的に進めることができます。トレーニングは基礎レベルから上級レベルまであり、オンデマンド、ライブ、バーチャル参加など、多忙なスケジュールにも対応できるオプションが用意されています。認定資格を取得することで、Google Cloud テクノロジーに関するスキルと知識を証明できます。

マニュアルの最終更新日: 2025 年 10 月 14 日

ラボの最終テスト日: 2025 年 10 月 14 日

Copyright 2026 Google LLC. All rights reserved. Google および Google のロゴは Google LLC の商標です。その他すべての企業名および商品名はそれぞれ各社の商標または登録商標です。

始める前に

  1. ラボでは、Google Cloud プロジェクトとリソースを一定の時間利用します
  2. ラボには時間制限があり、一時停止機能はありません。ラボを終了した場合は、最初からやり直す必要があります。
  3. 画面左上の [ラボを開始] をクリックして開始します

シークレット ブラウジングを使用する

  1. ラボで使用するユーザー名パスワードをコピーします
  2. プライベート モードで [コンソールを開く] をクリックします

コンソールにログインする

    ラボの認証情報を使用して
  1. ログインします。他の認証情報を使用すると、エラーが発生したり、料金が発生したりする可能性があります。
  2. 利用規約に同意し、再設定用のリソースページをスキップします
  3. ラボを終了する場合や最初からやり直す場合を除き、[ラボを終了] はクリックしないでください。クリックすると、作業内容がクリアされ、プロジェクトが削除されます

このコンテンツは現在ご利用いただけません

利用可能になりましたら、メールでお知らせいたします

ありがとうございます。

利用可能になりましたら、メールでご連絡いたします

1 回に 1 つのラボ

既存のラボをすべて終了して、このラボを開始することを確認してください

シークレット ブラウジングを使用してラボを実行する

このラボを実行するには、シークレット モードまたはシークレット ブラウジング ウィンドウを使用することをおすすめします。これにより、個人アカウントと受講者アカウントの競合を防ぎ、個人アカウントに追加料金が発生することを防ぎます。

ラボを開始するには、この簡単な手順を完了してください。