1. 無料のBigQueryサンドボックスでSELECT文を実行できる環境を立ち上げよう

Updated
2021/8/8 8:52
Author
Jumpei IkegamiJumpei Ikegami
何かのデータを見るときに、「それにはSQLの知識が必要です」と言われることがあります。少量のデータであればGoogleスプレッドシートを使って簡単な集計ができますが、Webのアクセスログなど数十万件を超えるような大量データを扱って自分が見たいデータを自由に集計するためには、やはりSQLを書けた方が速いです。
幸い、SQLはJavaScriptなどのプログラミング言語に比べても覚えることが少なく、非エンジニアの方でも簡単なものならすぐに書けるようになります。実際、非エンジニア職の人が当たり前にSQLを書いてデータ集計をしている会社をいくつも知っています。(嘘だと思う方は、「SQL 非エンジニア」でググってみてください。)
この一連のチュートリアルでは、Google BigQueryというデータベースとサンプルデータを使って、SQLの学習をしてみましょう。今回は、まず無料で使えるBigQueryのサンドボックス環境を準備します。

前提知識

必要な前提知識は特にありません。

作るもの

BigQueryと呼ばれるデータベースの環境を立ち上げ、用意されたサンプルデータに対してSQLを実行できるようにします。
notion image
クエリを実行した後の画面

体験すること

このチュートリアルによって、以下を体験します。
  • BigQueryのプロジェクトを作成する
  • BigQueryのサンプルデータにSQLを実行してみる
  • SQLにまつわる用語を知る

チュートリアルスタート!

ここからは、実際に手を動かしながら読み進めていきましょう。ただ読むだけよりも、実際に体験した方が内容を深く理解することができます。

BigQueryサンドボックス用のプロジェクトを作成する

まず、次のURLにアクセスします。
Googleアカウントにログインしていない場合は、ログインします。会社用と個人用のアカウントがある場合は、個人用アカウントを使った方が安全かもしれません。
利用規約に同意したら、プロジェクトを作成します。プロジェクトとは、Google Cloud Platform(GCP)上の仮想的な作業場所のようなものです。GCPではソフトウェア開発やデータ管理のための様々なサービスが提供されています。BigQueryもその一つです。早速、プロジェクト名と場所を適当に入力し作成ボタンを押しましょう。
notion image
プロジェクトの作成
プロジェクトを作成したら、BigQueryの画面に戻ります。ここで、先ほど作成したプロジェクト名がヘッダーに表示されていることを確認します。プロジェクトが複数ある場合は、ここから切り替えることができます。
また、左上に「サンドボックス」と表示されていることも合わせて確認します。この表示がされている限りは、上限を超えない限りは料金が発生することはありません。
notion image
BigQueryコンソール画面
なお、BigQueryのサンドボックス環境について詳しくは公式のドキュメントをご覧ください。

BigQueryのサンプルデータに対してSQLを実行してみる

たったこれだけの手順で、BigQueryというデータベース上でSQLを実行することができるようになりました。
SQLとは、主にデータベース上にあるデータに対して抽出や集計を実行するために使われます。SQLを体験するためには、抽出の対象となるデータが必要です。ありがたいことに、BigQuery上ではbigquery-public-dataと呼ばれる一般公開データがサンプルとして公開されています。今回は、その中でもGoogle Analyticsのサンプルデータであるga_sessionsというデータを使ってみましょう。ちなみに、このサンプルデータはGoogle Merchandise Storeと呼ばれるGoogle関連のグッズを販売するECサイトの実際のアクセスログを元に作られています。
まずは、次のSQLをクエリエディタにコピーし、実行ボタンを押してみましょう。SQLの中身についてはまだ気にする必要はありません。
SQL
notion image
問題なければ、画像に表示されているようにクエリ結果として実際のアクセスログデータが表示されるはずです。

SQLにまつわる用語を知る

次回以降のチュートリアルでは、実際にこのga_sessionsデータに対して簡単なSQLを実行して、どのようなデータ抽出ができるかを体験していきます。
ここで、SQLを学ぶ上で覚えておいた方がいい最低限の用語について理解しておきましょう。
大量のデータを取り出しやすいように管理するための場所を「データベース」と言います。このチュートリアルで触ったBigQueryも、広くいうとそのデータベースの一種です。
データベースの中には、Googleスプレッドシートのシートのような表形式のデータがたくさん保存されています。この表のことを「テーブル」と呼びます。
データベースでは、テーブル上のデータに対して一部のデータだけを抜き出したり、条件を指定して集計結果を表示したりすることができます。その抽出・集計を行うための命令のことを「クエリ」と呼びます。そのクエリを書くための言語の1つが「SQL」です。文脈によっては、「クエリ」と「SQL」は同じような意味合いで使われます。
notion image
SQLでできること
ちなみに、本来SQLはテーブルの更新や削除なども実行することができます。ただし、一般的にデータ分析に使われるSQLの範囲では、もともとあるテーブルを変更せずに抽出・集計結果の閲覧だけをします。データの抽出・集計などで使われるSQLの文法をSELECT文と言います。データ分析を目的とする場合、SQLの中でもSELECT文だけを覚えれば問題ありません。
以上で、今回のチュートリアルは終了です。退屈な環境構築は今回まで。次回からは、使い慣れた(?)スプレッドシートの機能と対応させながら、SQLをなぜ使うのか、SQLで何ができるのかについて体験していきます。
 

次のチュートリアル

2. スプレッドシートのCOUNT()を、SQLではどうやるか?2021/6/20 5:552021/8/8 9:02