🦔

BigQueryサンドボックスを無料で試す

2022/04/05に公開

これはなに?

BigQueryサンドボックス公開データセットを使って、お金をかけずにBigQueryに触ってみる記事です。

動機

iOSアプリに入れているFirebase Analyticsのデータを詳しく見てみたいという気持ちがありましたが

👻「ミスったときの高額請求がコワイ」

ので、ちょっと気軽に試してみたい!という温度感だと二の足を踏んでいました。

当然、請求対策には色々あると思います。

が、それよりまずは触ってみたいというのがありました。

そこで、無料のBigQueryサンドボックスを使ってみることにします。

BigQueryサンドボックスとは?

BigQuery サンドボックスを使用すると、BigQuery機能を無料で調べることができ、ニーズに適合したことを確認できます。サンドボックスでは、クレジット カード情報の登録、請求先アカウントの作成、プロジェクトの課金の有効化を行うことなく、BigQuery と Google Cloud Console を体験できます。

気になる制限ですが

  • BigQuery(課金有効)の無料枠と同じ上限まで使用出来る

という点が良さそうです(2022/03/25時点

ただ、テーブルなどの有効期限が60 日間しかなく、これ過ぎると自動で削除されてしまう点には注意が必要です。

詳しい制限はこちら👇

https://cloud.google.com/bigquery/docs/quickstarts/query-public-dataset-console#limits

やってみる

BigQuery を有効化

まずはGCPコンソールへアクセスします。

https://console.cloud.google.com/bigquery

はじめての場合は、BigQuery API を有効化します。

bq_1.png

使うデータセット

最終的にはFirebase Analyticsのデータを使ってみたいので、それに似た公開データセット 「Google Analytics Sample」 を練習用として利用しました。

👇ここから今回使うデータセットをインポート。

https://console.cloud.google.com/marketplace/product/obfuscated-ga360-data/obfuscated-ga360-data?project=vigilant-method-295105

  • 「Google Analytics Sample」

「データセットを表示」をクリックするとコンソールが開きます。

bq_2.png

次に、コンソール上のエクスプローラと表示されているナビゲーションパネルに、プロジェクト「bigquery-public-data」が新たに追加されているのを確認。

この「bigquery-public-data」の下に、「Google Analytics Sample」配置されます。

ちなみにアカウント、プロジェクト、データセット、テーブルは👇こんな関係性になっている模様。

  • GCPアカウント
    • プロジェクト
      • データセット
        • テーブル

テーブル

ナビゲーション パネルから、データセット「Google Analytics Sample」を検索

(or 直接テーブル名「ga_sessions...」で探してもOK)

データセットを展開したら「ga_session_ ...」をクリックします。

bq_3.png

そうすると右側のパネルにテーブルのスキーマが表示されます。

bq_4.png

タブの「プレビュー」を開くと、レコードのイメージも確認出来ます。

bq_5.png

SQLを試す

ナビゲーション パネルから、テーブル「ga_sessions...」の右側3点メニューから「クエリ」をクリック。

bq_6.png

SQLエディタが開きます。

(この方法でエディタを開くとテーブル名が指定されている状態)

SELECT
 
FROM
    `bigquery-public-data.google_analytics_sample.ga_sessions_20170801`
LIMIT
    1000

試しにクエリを実行してみます。

SELECT
    *
FROM
    `bigquery-public-data.google_analytics_sample.ga_sessions_20170801`
LIMIT
    10

クエリ実行時、すべてのカラムをSELECTすると処理サイズが大きくなるので注意

bq_7.png

逆にカラムを限定すると、一気に「15MB → 19KB」と大幅に小さくなることを確認出来ます。

bq_8.png

今回はこのまま全てのカラムを指定して実行してみます。

実行の結果

bq_9.png

今度は、Group By を使って、ブラウザ別のレコード数を表示してみます。

SELECT 
    device.browser,
    count(device)
FROM 
    `bigquery-public-data.google_analytics_sample.ga_sessions_20170801`
group by
    device.browser
LIMIT
    100

実行の結果

bq_10.png

これらクエリ結果のビューからは

  • 処理にかかったバイト数
  • 実行時の詳細情報

の確認や

  • エクスポート(CSVやJSON形式など

を行うことが出来ます。

bq_11.png

以上。

これで今日からデータサイエンティスト?🤔

Discussion