LoginSignup
4

More than 1 year has passed since last update.

posted at

updated at

Organization

Google SpreadSheetのデータをBigQueryに自動同期し、Googleデータポータル(旧Data Studio)で可視化する

概要

普段業務のなかでGoogle Spreadsheets(スプレッドシート)を利用して複数人でデータを管理している企業も多いかと思います。しかし絶えず集められるデータをその都度分析し、最新の状態に保つのにはコストがかかります。そこで今回は、troccoという分析基盤向けデータ統合サービスを使い、Google Spreadsheetsデータの抽出自動化+DWHへの統合+可視化までやってみようと思います。

今回、データの転送手段として採用したtroccoは、Google Spreadsheetsの他にも、様々な広告・CRM・DBなどのデータソースにも対応しています。
troccoの使い方まとめ(CRM・広告・データベース他)
Troccoアイコン.png

ゴール

↓画像のようなデータから
image.png

↓画像のようなグラフをを30分くらいで作り上げます(作成後は自動で最新値に更新することも可能です)
image.png

こんな人におすすめ

・スプレッドシートに集まるデータをいちいち転送するのが面倒に感じる
・Googleフォームを利用したアンケートの結果などを自動的に分析できるようにしたい
・スプレッドシートをデータ元として利用したい

1. DWHと同期する手段の選定

1-1. DWHの選定

まずはデータを集約する場所である、DWH(データウェアハウス)を選定します。

  • Amazon Redshift
  • Google BigQuery
  • MySQLやPostgreSQL

今回はGoogle BigQueryを利用することにします。

1-2. Google SpreadsheetのデータをGoogle BigQueryに転送する4つの方法

Google BigQueryにデータを集約することが決まったので、続いては転送するための手段を検討します。

  1. CSV形式でエクスポートしたGoogle Spreadsheetsのデータを直接Google BigQueryに貼り付ける
  2. 外部データソースとしてGoogle SpreadsheetsのシートのURLを指定する。
  3. BigQuery データコネクタであるコネクテッド シートを使用する(ただしGsuiteのプランがEnterprise以上である必要がある)
  4. troccoを利用し、画面上の設定のみで転送する。

1は単発の分析でしたら可能ですが、集めたデータをその都度更新し続けるのは手間がかかります。2の方法ではGoogle BigQueryを操作するGoogleアカウントがデータ元となるスプレッドシートに対して閲覧以上の権限を有する必要があります。3の方法ではGsuiteのプランが障壁となります。
今回は自動での更新が可能で、一度Googleアカウントとの連携を行えば設定を保存して異なる分析にも使い回せる4のtroccoを利用してみたいと思います。

2. troccoでGoogle Spreadsheets→Google BigQueryの転送自動化

2-0. 事前準備

データの転送のためにはtroccoのアカウント・Googleアカウントが必要です。

無料トライアルを実施しているので、事前に申し込み・登録しておいてください!
https://trocco.io/lp/index.html
(申込の際に、この記事を見た旨を記載して頂ければご案内がスムーズに行えます)

Googleアカウントに関しては、今回転送元となるGoogle Spreadsheetsのシートを所有するアカウントと、転送先となるGoogle BigQueryのアカウントが異なっても構いません。ただしGoogle BigQueryとGoogleデータポータルは同じアカウントで運用したほうが接続が簡単だと思います。

2-1. 転送元・転送先を決定

troccoにアクセスして、ダッシュボードから「転送設定を作成」のボタンを押します。
qiita_20200827_2.png

転送元に「Google Spreadsheets」を指定し、転送先に「Google BigQuery」を選択して転送設定作成ボタンを押します。
設定画面.png

すると、設定画面になるので、必要な情報を入力していきます。

2-2. Google Spreadsheetsとの連携設定

あとで見たときに自分で分かるように転送設定の名前とメモを入力します。
2-1設定.png

次に「転送元の設定」内の「接続情報を追加」ボタンを押します。
スプシ接続設定.png

別のタブで接続情報の新規作成画面が開きます。Googleアカウントとの連携が可能です。
image.png

接続設定.png

再度転送設定画面に戻り、接続情報の「再読込」ボタンを押すと、先ほど作成した接続情報が選択できるようになります。

image.png

2-3. Google Spreadsheetsからのデータ抽出設定

次に、どのようなデータを取得するかを設定していきます。
今回は以下のようなシートから閲覧数(view)に関するデータを取得してみます。
image.png

必要なデータを入力していきます。
一番下のカラム設定のデータ型はstring, long, timestamp, boolean, doubleなどから選択が可能です。
転送元設定.png

2-4. 転送先Google BigQueryの設定

転送元と同様に設定していきます。Google BigQueryに関してもGoogleアカウントとの連携が可能です。(事前に転送先となるデータセットとテーブルを作成しておいてください。)
Big Query接続設定.png

転送先とするデータセット名、テーブルを設定します。
image.png

これで入力は完了です。「保存して自動データ設定・プレビューへ」をクリックし、確認作業に進みましょう。

2-5. データのプレビュー

少し待つと、転送元のデータがプレビューされます。ここではGoogle SpreadSheetsから取り込んだデータが表示されています。
image.png

転送したいデータが取れているので、設定を完了します。
転送設定の一覧から作成した設定を選び「スケジュール・通知設定」に進みます。

2-6. スケジュール・通知設定

「スケジュール・トリガー設定」タブを開きます。
設定内容.png

「スケジュールを追加」ボタンを押すと、以下の画像のような入力欄が出てきます。ここで実行スケジュールを設定することで、転送を定期的に実行し自動化することが出来ます。
新規スケジュール登録.png

2-7. データ転送ジョブの実行

設定は以上です。最後に、手動で転送ジョブを実行し、Google BigQueryにデータを送ります。
手動で実行する場合はジョブ詳細画面の「実行」ボタンを押します。
設定確認.png

これで転送は完了です!

3. Google BigQueryの設定

特に設定することはありません。設定で選択したテーブルにデータが転送されているので、今すぐに分析・可視化を行うことが出来ます。
データがきちんと送られているかをプレビューで確認してみます。
image.png

転送されていることが確認できました!

4. Googleデータポータルで可視化

それでは、これらのデータをGoogleデータポータルで可視化していきます。

まずはGoogle BigQueryとGoogleデータポータルの接続設定を行います。
Googleデータポータルを開いて、新規のレポートを作成します。
image.png
「データを追加」のボタンを押し、データ元の選択肢からGoogle BigQueryを選択します。
image.png

転送に使用したプロジェクト、データセット、表(テーブル)を選択し、追加します。
データポータル接続設定.png

データベースに接続できたら、右側の設定を変更し、必要な情報を表示させます。
後で作成する棒グラフにおいて、「ディメンション」が横軸、「指標」が縦軸に対応します。
image.png

image.png

最後に右上のグラフ一覧から目的に合ったグラフの形を選択します。
今回は閲覧数の比較をするため、棒グラフを選択します。

image.png

まとめ

いかがでしたでしょうか。troccoを使うと、複数人で編集したり絶えず更新されるGoogle Spreadsheetsのデータでも自動でGoogle BigQueryにまとめていくことができるほか、100万規模の大きなデータからそうではない小さなデータまで複雑なコーディングをせずtroccoの画面上の設定のみでデータの転送が可能になります。
実際に弊社サービスのtroccoにおいても、マーケティングKPI等をこのような流れで収集・分析しています。
ぜひ広告データ分析の際にはご活用ください。
https://trocco.io/lp/index.html

実際に試してみたい場合は、無料トライアルを実施しているので、この機会にぜひ一度お試しください。(申込時に、この記事を見た旨を記載して頂ければスムーズにご案内することができます)

その他にも広告やデータベースなど、様々な分析データをETL・転送した事例をまとめました。
troccoの使い方まとめ(CRM・広告・データベース他)

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
4