Help us understand the problem. What is going on with this article?

Google広告のレポートデータをRedshiftに統合してLookerで可視化する

概要

Google広告で広告を掲載する際に、統計データを活用してクリック数やインプレッション数を分析することがあると思います。しかし、分析を行うためには広告データを分析基盤に集約させるという、少々面倒な作業を行う必要があります。
そこで、今回はGoogle広告のレポートをRedshiftにtroccoを使ってデータを統合する方法をご紹介します。
貼り付けた画像_2020_11_02_9_36.png

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

ゴール

Google広告のレポートデータから
貼り付けた画像_2020_11_02_16_36.png
このようにRedshiftにデータ統合するまでを30分程度でやっていきます(作成後には最新値が自動で同期されるようにします)
貼り付けた画像_2020_11_02_16_31.png

こんな人におすすめ

  • Google広告のデータを分析基盤・DWH(データウェアハウス)に取り込む予定の方
  • 広告レポートをcsvファイルにエクスポートして分析基盤に取り込むのに時間がかかり、より効率化したいと考えている方
  • データ分析の前準備に疲れてしまった方

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

1-1. DWHの選定

まずはデータをどこに集約するか、DWH(データウェアハウス)を選定します。

  • Amazon Redshift
  • Google BigQuery
  • MySQL
  • PostgreSQL など

今回はAmazon Redshiftを利用することにします。

1-2.転送手段の選定

Redshiftにデータを集約することが決まったところで、次は転送するための手段を選びます。
1. パフォーマンスレポートをcsvデータ形式でエクスポートし、手動でRedshiftにアップロードする。
2. Google広告とRedshiftの各APIを、自前でプログラムを書いて連携させる。
3. Embulkを利用し、自前で環境を構築する
4. troccoを利用し、画面上で設定する。
1. は単発の実行であれば良いものの、定期的に取り込む必要がある場合はタイムロスが多く、非効率な作業になりがちです。
2. はAPIのキャッチアップ工数+プログラムを書く工数+環境構築工数が発生する他、エラー対応などの運用工数も継続的に発生します。
3. も2と同じくEmbulkはある程度の専門知識が必要になり、自前で環境構築・運用を行う手間が発生します。エラーの内容が専門的で、詰まると大幅に時間を浪費してしまいます。

そこで、Embulkの課題も解決してくれて、プログラムを書かずに画面上の設定で作業が完結する、4.troccoというSaaSを利用します。

2. troccoでGoogle広告→Redshiftの転送自動化

2-0. 事前準備

troccoのアカウントおよびGoogle広告のアカウントが必要です。
無料トライアルも実施しているので、前もって申し込み・登録をしておいてください!
(申込時に、この記事を見た旨を記載して頂ければスムーズにご案内できます)

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

troccoにアクセスし、ダッシュボードから「転送設定を作成」のボタンを押します。
image.png
転送元にGoogle広告、転送先にRedshiftを選択し、転送設定作成ボタンを押します。
image.png
すると、設定画面になるので、転送に必要な情報を入力していきます。

2-2. Google広告との連携設定

転送設定の名前とメモを入力します。
image.png
転送設定の名前を決めたら、「転送元の設定」内の「接続情報を追加」ボタンを押し、Google広告の接続情報の設定を行います。
貼り付けた画像_2020_11_02_9_51.png
「Googleアカウント認証」のボタンを押して、データを取得したいGoogle広告のアカウントで認証を行います。
image.png
認証が完了しました。「Googleアカウント」の欄が埋まったので、名前を適当に入力して設定を完了します。
貼り付けた画像_2020_11_06_9_56.png
再度転送設定画面に戻り、「接続情報を読み込む」ボタンを押すと、作成した接続情報が選択できるかと思います。
image.png

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

これでGoogle広告との連携は完了です。次に、Google広告の取得データを設定します。

まずは必須項目の「お客様ID」「リソースタイプ」をセレクトボックスの中から選択します。
貼り付けた画像_2020_11_06_13_03.png
次に「フィールド」の設定です。レポートに含める項目(カラム)を設定していきます。
クリック数・インプレッション数など、分析に必要な項目をピックアップします。
image.png
次に「データ取得期間」の設定です。
取得期間を転送のたびに設定し直すのは手間がかかるので、ここではカスタム変数を使います。

このように変数を設定することで、「1ヶ月前〜現在のデータを取得する」というような設定が可能です。
image.png
以上でGoogle広告側の設定は完了です。
次は転送先のRedshiftの設定を行っていきましょう。

2-4. 転送先Redshiftの設定

基本的には転送元と同じ要領です。
「接続情報を追加」ボタンからRedshiftの接続設定を行い、データベース・スキーマ・テーブルを入力します
貼り付けた画像_2020_10_23_15_15.png
S3パケット・S3キープレフィックス・転送モードも必須項目です。これらも入力します。
貼り付けた画像_2020_10_23_15_19.png
最後に、接続確認が問題なく通るか確認します。
image.png
これで入力は完了です。「保存して自動データ設定・プレビューへ」をクリックし、確認作業に進みましょう。

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

少し待つと、転送元のデータがプレビューされます。Yahoo!広告から取り込んだデータが表示されているのが確認できると思います。
問題なければ、「設定を完了する」を押して、スケジュールや通知設定に進みます。
貼り付けた画像_2020_11_02_11_23.png

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

「スケジュール・トリガー設定」タブを開きます。
貼り付けた画像_2020_11_06_9_56.png
以下のように実行スケジュールを設定することで、転送を自動化することが出来ます。
貼り付けた画像_2020_11_02_11_26.png

2-7. 通知設定

必須の設定ではないですが、通知タイプ・通知条件・通知先を選択し設定を保存することで、EmailやSlackに通知を行うことが出来ます。
貼り付けた画像_2020_11_02_11_27.png
また、必要な時のみ実行したい場合は、手動で転送を実行することも出来ます。
その場合は、転送設定詳細の「実行」ボタンを押して進めていきます。
貼り付けた画像_2020_11_02_16_41.png
転送が完了しました。
image.png

3. Redshiftの設定

特に設定することはありません。データが溜まっているので、今すぐに分析・可視化を行うことが出来ます。
データをプレビューして確認してみます。
貼り付けた画像_2020_11_02_16_01.png
広告データがRedshiftに同期されていることが確認できました。

4. Lookerで可視化

それでは、これらのデータをLookerで分析してみます。

まずはRedshiftとLookerを接続します。
管理タブを開いて「Database」の「Connections」を開きます。
貼り付けた画像_2020_11_02_16_02.png
接続しているデータベース一覧が表示されています。ここで「Add Connection」→「Database Connection」から接続するデータベース情報を入力します。
貼り付けた画像_2020_11_02_16_06.png
貼り付けた画像_2020_11_02_16_06.png
Redshiftのデータベースに接続できたら、次はデータを可視化するために必要なLookMLプロジェクトを作成します。
開発タブを開いて「LookMLプロジェクトの管理」に移動します。
貼り付けた画像_2020_11_02_16_09.png
「New LookML Project」からLookMLプロジェクトを作成します。
貼り付けた画像_2020_11_02_15_51.png
image.png
「Create Project」を押したら、エディタでmodelとviewを定義します。
後々必要になるので、modelの中ではexploreを設定しておきましょう。
(書き方が分からない場合はLookerの公式ドキュメントを参照してください)
image.png
貼り付けた画像_2020_11_02_16_16.png
これで下準備が整いました。
トップページに戻って「New」からDashboardを作成します。
貼り付けた画像_2020_11_02_16_18.png
白紙のダッシュボードができました。ここに各種グラフを追加していきます。「新しいTILE」を押します。
貼り付けた画像_2020_11_02_16_24.png
先ほどのmodel内で定義したExploreを選択します。
貼り付けた画像_2020_11_02_16_25.png
DIMENSIONSとMEASURESを設定し、Tileに表示したいデータをプロットします。ここではキャンペーンごとのクリック数を分析しています。
貼り付けた画像_2020_11_02_16_27.png
これで一つTileが完成しました。この調子で他のTileも作成すると、今回のゴールであるGoogle広告の広告データダッシュボードが出来上がります。
貼り付けた画像_2020_11_02_16_29.png
貼り付けた画像_2020_11_02_16_31.png

まとめ

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

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

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

hiro_koba_jp
ゴルフエンジニア
primenumber_inc
ビッグデータ分析基盤向けデータ統合自動化サービス「 trocco」などを提供する、データエンジニアリングスタートアップ
https://primenumber.co.jp
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away