1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Google SpreadsheetsのデータをSnowflakeに自動同期し、Lookerで可視化する

Last updated at Posted at 2021-07-06

概要

データを取り扱う業務の中で、Google Spreadsheets(スプレッドシート)を使っている方も多いと思います。
ただ、Google Spreadsheetsにアップロードされたデータを分析する際、更新されるたびにデータを転送して最新の状態に保つのには手間がかかります。
そこで今回は、troccoという分析基盤向けデータ統合サービスを使い、Google Spreadsheetsデータの抽出自動化+DWH(データウェアハウス)への統合+可視化までやってみようと思います。

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

ゴール

下のようなGoogle Spreadsheetsのデータ1

spデータ.png

Snowflakeに結合し、Lookerで可視化します(作成後は自動で最新値に更新することも可能です)
データ可視化①.png

こんな人におすすめ

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

1. troccoでGoogle Spreadsheets→Snowflakeの転送自動化

1-0. 事前準備

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

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

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

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

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

1-2. Goolge Spreadsheetsとの連携設定

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

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

別タブでGoolge Spreadsheetsの接続情報の新規作成画面が開きます。
接続情報を作成するためにGoolgeのアカウントと連携する必要があります。
spread接続情報.png

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

これでGoolge Spreadsheetsとの連携は完了です。

1-3. Goolge Spreadsheetsからのデータ抽出設定

次に、どのようなデータを取得するかを設定していきます。

転送先のGoogle SpreadsheetsのスプレッドシートIDとシート名を入力します。

  • スプレッドシートURL

    • 取得したいスプレッドシートのURLを入力します。
  • シート名

    • 取得したいシートの名前を入力します。
  • 取り込み開始行番号

    • 取り込むデータの最初の行番号を入力します。
    • ヘッダ行がある場合、ヘッダ行を含めずデータの最初の行番号を指定してください。
  • デフォルトタイムゾーン

    • デフォルトタイムゾーンを指定します。
  • NULL文字列

    • NULLと認識させたい文字列を入力します。
  • カラム設定

    • 取得したいカラムのカラム名とデータ型を指定します。

sp設定.png

1-4. 転送先Snowflakeの設定

転送元と同様に設定していきます。Snowflakeの接続情報を作成していきます。
転送先となるSnowflakeの接続先ホスト、ユーザー名、及びパスワードが必要になります。

snowflake追加.png

先ほど作成した接続情報を選択し、転送先とするウェアハウス、データベース名、スキーマ名を設定します。
転送モードに関してはreplaceを選択します。各転送モードの詳細はこちらの「転送モードについて」をご確認ください。

snow設定.png

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

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

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

転送したいデータが取れているので、このまま「スケジュール・通知設定」に進みます。

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

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

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

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

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

これで転送は完了です!

2. Snowflakeの設定

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

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

3. Lookerで可視化

それでは、これらのデータをLookerで可視化していきます。
まずはSnowflakeとLookerを接続の設定を行います。
管理タブを開いて「データベース」の「接続」を開きます。
接続選択.png

接続しているデータベース一覧が表示されています。ここで「Add Connection」→「Database Connection」から接続するデータベース情報を入力します。
addconnection.png
loco.png

Snowflakeのデータベースに接続できたら、次はデータを可視化するために必要なLookMLプロジェクトを作成していきます。 開発タブを開いて「LookMLプロジェクトの管理」に移動します。

プロジェクトの管理.png

「New LookML Project」からLookMLプロジェクトを作成します。
newlookerml.png

プロジェクト.png

「Create Project」を押したら、エディタでmodelとviewを定義します。 後々必要になるので、modelの中ではexploreを設定しておきましょう。 (書き方が分からない場合はLookerの公式ドキュメントを参照してください)
modelsp.png
viewsp.png

これで下準備が整いました。 トップページに戻って「New」からDashboardを作成します。
newdash.png

白紙のダッシュボードが作成されるので「spreadsheets_ダッシュボード」と名前をつけます。
そして「Dashborardの編集」→「タイルの追加」を選択し、先ほどのmodel内で定義したExploreを選択します。

sp選択.png

ディメンションとメジャーを設定し、Tileに表示したいデータをプロットします。例えば、年別の加工食品の消費者物価指数を分析したいときはディメンションに「年度」とメジャーに「加工食品」を選択します。

加工食品.png

そのほかに必要なタイルを作成し、ダッシュボードにまとめていきます。
データ可視化①.png

完成しました!

まとめ

いかがでしたでしょうか。troccoを使うとGoogle Spreadsheetsの管理画面を触ることなく、簡単にデータを取得し、DWH(Snowflake)に貯めることが出来ます。
Snowflakeにデータを貯めると、Lookerと連携することでデータを使ってグラフを作り、可視化できます。
実際に弊社サービスのtroccoにおいても、マーケティングKPI等をこのような流れで収集・分析しています。
ぜひ広告データ分析の際にはご活用ください。
https://trocco.io/lp/index.html

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

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

  1. e-statから消費者物価指数データを引用しました。

1
1
0

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
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?