スプレッドシートでさくっとBIツールを作成する(BigQuery & Looker Studio)

1. はじめに
普段スプレッドシートでデータ分析しているが、BIツールでもう少し見やすく可視化したい、なんてことはありませんか?
今回はGoogleスプレッドシートのデータを、Looker Studioでビジュアライズする方法を紹介します。
2. 必要なツールと準備
今回使うツールは、Googleスプレッドシート、BigQuery、Looker Studioの3つ。
そして、Google Cloud Platform(GCP)のアカウントが必要です。
GCPは無料枠があるので、さくっと試すにも安心です。
3. スプレッドシートをBigQueryにリンクする
スプレッドシートをBigQueryにリンクするには、まずデータセットを作成し、「外部テーブル」としてスプレッドシートを指定します。



データ型について「スキーマの自動検出」というものがありますが、実データと、自動検出したデータ型の不整合が頻繁に発生するため、あまりおすすめしません。
BigQueryでは作成したテーブルのフィールドのデータ型が変更できないこと、スプレッドシートの場合、外部テーブルとして接続されるため、一見データ型との不整合がないように見えて、クエリ実行時にエラーが発生することがあります。
手動でスキーマを設定し、意図しないエラーを防ぐのがよいでしょう。

4. BigQueryでスプレッドシートのデータを確認する
BigQueryにリンクしたスプレッドシートのデータは、SQLで簡単にクエリできます。
たとえば、特定の列を抽出したり、条件に応じたデータを集計したりできます。


5. Looker StudioとBigQueryを接続する
BigQueryのデータをLooker Studioに接続すると、データを視覚的に操作できるようになります。
接続は簡単で、Looker Studioで「データソースを追加」し、BigQueryのテーブルを選ぶだけ。
接続後は、グラフや表を作る準備が整います。この段階でデータが正しく表示されるかを確認しましょう。


6. 簡単なダッシュボードを作成する
ここまでくれば、あとはLooker Studioで遊んでみましょう。
データソースがあれば、表やグラフを追加して、さまざまなビジュアライズが可能です。
コントロール(フィルタやドロップダウン)を使うと、ユーザーが入力した値をパラメータとして使うことができます。
さらに、BigQueryの場合は、このパラメータをクエリパラメータとして挿入できるため、インタラクティブにデータの抽出が可能です。
7. データを更新してみよう
スプレッドシートを外部テーブルとして利用する場合、スプレッドシート上の変更は、BigQueryとLooker Studioにリアルタイムで反映されます。
これはさくっと検証したいときにも非常に便利でした。
一方、スプレッドシートは動作が重くなりがちなため、データ量が多い場合は適さない可能性があります。
筆者の検証では、5万行、20カラムの100万セル程度のデータで、非常にクエリが重たくなりました。
Looker Studioのクエリは3~5分でタイムアウトするそうですが、タイムアウトもしばしば発生する事態に。
この結果、Cloud SQLへの移行を行いましたが、これについては後日記事にしたいと思います。
8. 参考事例
Looker Studioのビジュアライズは、クリスプ・サラダワークスさんがとても参考になっています。
https://lookerstudio.google.com/u/0/reporting/01c05c49-dbc4-464b-aa9a-0a9ff0b97e7b/page/RrEJC
各店舗の重要指標をすべて包み隠さず公開されてるの、かっこいいですよね...!
9. まとめ: データ分析の第一歩を踏み出そう
この記事では、スプレッドシート、BigQuery、Looker StudioでさくっとBIツールを作成する手順をお伝えしました。
BIツールを用意したい、というときの最初の一歩、検証として、今日からでもできるので、ぜひやってみてはいかがでしょうか?
次回の記事では、本番運用を見据えて、Cloud SQLをデータソースとしたBI化のポイントをお伝えしようと思います!