arrow_back

BigQuery に新しいデータセットを取り込む

参加 ログイン
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

BigQuery に新しいデータセットを取り込む

Lab 1時間 universal_currency_alt クレジット: 1 show_chart 入門
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

GSP411

Google Cloud セルフペース ラボ

概要

BigQuery は、Google が提供する低コスト、NoOps のフルマネージド分析データベースです。BigQuery では、インフラストラクチャを所有して管理したりデータベース管理者を置いたりすることなく、テラバイト単位の大規模なデータでクエリを実行できます。また、SQL が採用されており、従量課金制というメリットもあります。このような特長を活かし、有用な情報を得るためのデータ分析に専念できます。

ここでは、ecommerce データセットを使用します。このデータセットには、Google Merchandise Store に関する数百万件の Google アナリティクス レコードが含まれており、BigQuery に読み込まれています。このデータセットのコピーを使用して、フィールドや行からどのような分析情報が得られるのかを確認します。

このラボでは、数種類のデータセットを BigQuery 内のテーブルに取り込みます。

設定と要件

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

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

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

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

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

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

  1. [ラボを開始] ボタンをクリックします。ラボの料金をお支払いいただく必要がある場合は、表示されるポップアップでお支払い方法を選択してください。 左側の [ラボの詳細] パネルには、以下が表示されます。

    • [Google コンソールを開く] ボタン
    • 残り時間
    • このラボで使用する必要がある一時的な認証情報
    • このラボを行うために必要なその他の情報(ある場合)
  2. [Google コンソールを開く] をクリックします。 ラボでリソースが起動し、別のタブで [ログイン] ページが表示されます。

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

    注: [アカウントの選択] ダイアログが表示されたら、[別のアカウントを使用] をクリックします。
  3. 必要に応じて、[ラボの詳細] パネルから [ユーザー名] をコピーして [ログイン] ダイアログに貼り付けます。[次へ] をクリックします。

  4. [ラボの詳細] パネルから [パスワード] をコピーして [ようこそ] ダイアログに貼り付けます。[次へ] をクリックします。

    重要: 認証情報は左側のパネルに表示されたものを使用してください。Google Cloud Skills Boost の認証情報は使用しないでください。 注: このラボでご自身の Google Cloud アカウントを使用すると、追加料金が発生する場合があります。
  5. その後次のように進みます。

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

その後このタブで Cloud Console が開きます。

注: 左上にある [ナビゲーション メニュー] をクリックすると、Google Cloud のプロダクトやサービスのリストが含まれるメニューが表示されます。 ナビゲーション メニュー アイコン

BigQuery コンソールを開く

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

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

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

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

タスク 1. テーブルを格納するための新しいデータセットを作成する

  1. データセットを作成するには、プロジェクト ID の横にある「アクションを表示」アイコンをクリックし、[データセットを作成] を選択します。

ハイライト表示された [データセットを作成] オプション

  1. [データセット ID] に「ecommerce」と入力します。他のフィールドはデフォルト値のままにします。

  2. [データセットを作成] をクリックします。

プロジェクト名の下に ecommerce データセットが表示されます。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 テーブルを格納するための新しいデータセットを作成する

タスク 2. CSV から新しいデータセットを取り込む

シナリオ: あなたはマーケティング チームから、プロモーションの対象にする商品を在庫ストックレベルに基づいて決定できるようにして欲しいと頼まれました。商品レビューに基づいて、各商品の顧客感情の傾向を把握できるようにする必要もあります。

既存の e コマース トランザクション データセットには在庫ストックレベルや商品レビューのデータは含まれていませんが、運用チームとマーケティング チームから分析用に新しいデータセットが提供されています。

次のように作業を開始します。

  1. 商品のストックレベルのデータセットを、ローカルのコンピュータにダウンロードします(通常のウィンドウでファイルを開いてダウンロードします)。

  2. テーブルを作成するには、e コマース データセットの横にある「アクションを表示」アイコンをクリックして、[開く] を選択します。

  3. [テーブルを作成] をクリックします。

  4. 以下のテーブル オプションを指定します。

ソース:

  • テーブルの作成元: アップロード
  • ファイルを選択: 先ほどローカルにダウンロードしたファイルを選択
  • ファイル形式: CSV

送信先:

  • テーブル名: products

他の設定はデフォルト値のままにします。

スキーマ:

  • スキーマの [自動検出] をオンにする
ヒント: このチェックボックスが表示されない場合は、ファイル形式が Avro ではなく CSV になっていることを確認してください。
  • パーティションとクラスタの設定: デフォルト設定のまま

詳細オプション:

  • デフォルト設定のまま
  1. [テーブルを作成] をクリックします。

ecommerce データセットの下に products テーブルが表示されます。

  1. products テーブルを選択し、[詳細] をクリックします。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 CSV から新しいデータセットを取り込む

  1. [プレビュー] を選択して、すべての列が読み込まれていることを確認します(以下はその一部を取り出したものです)。
SKU name orderedQuantity stockLevel restockingLeadTime
GGOEGDHQ014899 20 oz Stainless Steel Insulated Tumbler 499 652 2
GGOEGOAB022499 Satin Black Ballpoint Pen 403 477 2
GGOEYHPB072210 Twill Cap 1429 1997 2
GGOEGEVB071799 Pocket Bluetooth Speaker 214 246 2

CSV ファイルを新しい BigQuery テーブルに読み込むことができました。

新たに読み込んだデータを SQL で探索する

次に、基本的なクエリを使用して新しい products テーブルから分析情報を得る方法を実践します。

  • stockLevel の値が高い商品の上位 5 つを表示するクエリを BigQuery のエディタに記述します。
#standardSQL SELECT * FROM ecommerce.products ORDER BY stockLevel DESC LIMIT 5

タスク 3. Cloud Storage からのデータを取り込む

  1. e コマース データセットの横にある「アクションを表示」アイコンをクリックしてテーブルを作成してから、[テーブルを作成] をクリックします。

  2. 以下のテーブル オプションを指定します。

ソース:

  • テーブルの作成元: Google Cloud Storage
  • GCS バケットからファイルを選択: data-insights-course/exports/products.csv
  • ファイル形式: CSV

送信先:

  • テーブル名: products

その他の設定はすべてデフォルトのままにします。

スキーマ:

  • スキーマの [自動検出] をオンにします。

詳細オプション:

  • デフォルト設定のまま
  1. [テーブルを作成] をクリックします。

うまくいきましたか?いいえ

  1. エラー メッセージが表示されたら [ジョブに移動] をクリックして、[読み込みジョブを繰り返す] ボタンをクリックします。

  2. [テーブルの作成] フォームで [詳細オプション] をクリックし、[書き込み設定] プルダウン メニューで [テーブルを上書きする] を選択します。

  3. 次に、[テーブルを作成] をクリックします。

テーブルが正常に作成されたことを確認します。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 Cloud Storage からのデータを取り込む

タスク 4. Google スプレッドシートから新しいデータセットを取り込む

  1. [クエリを新規作成](追加アイコン)をクリックします。

  2. 次のクエリを実行します。在庫回転率と補充に要する時間に基づいて、最初に補充すべき商品が示されます。

#standardSQL SELECT *, SAFE_DIVIDE(orderedQuantity,stockLevel) AS ratio FROM ecommerce.products WHERE # 注文された商品のうち # 在庫の 80% が消費された商品を含める orderedQuantity > 0 AND SAFE_DIVIDE(orderedQuantity,stockLevel) >= .8 ORDER BY restockingLeadTime DESC 注: プロジェクト名の相対パスを指定すると(project_id.ecommerce.products の代わりに ecommerce.products と指定するなど)、BigQuery では現在のプロジェクトのパスと見なされます。

タスク 5. Google スプレッドシートにデータを保存する

シナリオ: あなたは、サプライ チェーン管理チームが商品についてのメモ(サプライヤーに再注文の連絡をしたかどうかなど)を記録できるようにする必要があります。これを迅速に実現するため、Google スプレッドシートを使用することにしました。

まずそのスプレッドシートを作成します。

  1. [クエリ結果] で、[結果を保存する] を選択し、プルダウンから [Google スプレッドシート] を選択します。

  2. ポップアップが開き、スプレッドシートを開くためのリンクが表示されます。[開く] を選択します。

  3. そのスプレッドシートの G 列に「comments」という名前の新しいフィールドを追加し、最初の商品の行に「new shipment on the way」と入力して Enter キーを押します。

スプレッドシート内で強調表示されたコメント列

Google スプレッドシートで、[共有] を選択し、[リンクを取得] から [リンクをコピー] をクリックします。

  1. BigQuery のタブに戻ります。

  2. e コマース データセットの横にある「アクションを表示」アイコンをクリックし、[テーブルを作成] をクリックします。

  3. 以下のテーブル オプションを指定します。

ソース:

  • テーブルの作成元: ドライブ
  • ドライブの URI を選択: スプレッドシートの URL を入力
  • ファイル形式: Google スプレッドシート

送信先:

  • テーブルタイプ: デフォルトのまま(外部テーブル)
  • テーブル名: products_comments

スキーマ:

  • スキーマの [自動検出] をオンにします。

詳細オプション:

  • [スキップするヘッダー行] ボックスに 1 を入力する
  • すべてのオプションをデフォルトのままにする
  1. [テーブルを作成] をクリックします。
注: 外部リンクテーブルを作成する際にはデータは取り込まれないため、読み込みジョブはありません。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 Google スプレッドシートから新しいデータセットを取り込む

外部スプレッドシートのデータをクエリする

  1. クエリを新規作成」アイコンをクリックします。

以下のクエリを追加して、[実行] をクリックします。

#standardSQL SELECT * FROM ecommerce.products_comments WHERE comments IS NOT NULL

クエリが実行されるのを待ちます。今度は新しい comments フィールドが返されます。

SKU

name

orderedQuantity

stockLevel

restockingLeadTime

ratio

comments

GGOENEBB078899

Cam Indoor Security Camera - USA

2139

2615

42

0.8179732314

new shipment on the way

  1. Google スプレッドシートのタブに戻ります。

  2. comments フィールドにさらにコメントを入力します。

  3. BigQuery に戻り、[実行] をクリックしてクエリをもう一度実行します。

新しいデータが結果に正しく表示されることを確認します。

Google スプレッドシートから BigQuery への外部テーブル接続が作成されました。

タスク 6. 外部テーブルのパフォーマンスとデータ品質の考慮事項

BigQuery に外部テーブルをリンクする場合(Google スプレッドシートをリンクする場合や、Cloud Storage から直接リンクする場合など)、いくつかの制限があります。特に重要なのは次の 2 つです。

  • クエリの実行中にソースでデータの値が変更された場合、データの整合性は保証されません。
  • BigQuery でデータ ストレージを管理する場合に得られるパフォーマンス上のメリット(クエリ実行パスの自動最適化、一部のワイルドカード関数の無効化など)は、BigQuery の外部に保存されているデータソースでは得られません。

お疲れさまでした

新しいデータセットを作成し、CSV、Cloud Storage、Google ドライブから BigQuery に新しい外部データソースを取り込むことができました。

クエストを完了する

このセルフペース ラボは、BigQuery for Marketing Analysts クエストの一部です。クエストとは学習プログラムを構成する一連のラボのことで、完了すると成果が認められてバッジが贈られます。バッジは公開して、オンライン レジュメやソーシャル メディア アカウントにリンクできます。こちらのクエストに登録すると、すぐにクレジットを受け取ることができます。受講可能な全クエストについては、Google Cloud Skills Boost カタログをご覧ください。

次のラボを受講する

How to Build a BI Dashboard Using Google Looker Studio and BigQuery」に進んでクエストを続けるか、別の Google Cloud Skills Boost ラボ「Creating Date-Partitioned Tables in BigQuery」をお試しください。

次のステップと詳細情報

すでに Google アナリティクス アカウントをお持ちで、BigQuery で独自のデータセットに対してクエリを実行されたい場合は、こちらのエクスポート ガイドに沿って行ってください。

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

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

マニュアルの最終更新日: 2023 年 10 月 6 日

ラボの最終テスト日: 2023 年 10 月 11 日

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