概要

CriteoはCriteoエンジンによる機械学習を活用し、ユーザーがクリックした商品に関連性の高い商品を提示する広告サービスです。Criteoというサービス名はGoogle広告やFacebook広告といったサービスと比べやや知名度が低いかもしれませんが、Criteo広告自体は多くの方が目にしたことがあると思います。

Criteo広告も他の広告サービス同様インプレッション数やクリック数といったデータの分析は非常に重要です。また他の広告サービスのデータとも絡めた横断的なデータ分析も有効です。

いずれの場合も広告データをデータ分析基盤に統合し、データの高速処理に特化したDWH、データの可視化に特化したBIツール活用していくこととなりますが、データの統合はデータエンジニアリングの知識が必要でデータの知見がないマーケティング部門の方にとっては少しハードルが高いです。

そこで今回はデータ分析基盤構築サービスtrocco®を利用し、複雑なコーディング作業なしにCriteoのデータをAmazon RedshiftというDWHへ統合し、Lookerを利用してデータの可視化を行います。

データの転送手段として採用したtrocco®は、Criteo広告以外に、Yahoo!検索広告、Google広告、Twitter広告、LINE広告などにも対応しています。

criteo広告のデータをAmazon Redshiftへ転送

ゴール

Criteo広告のデータをこのように可視化します。作成後は自動で最新値に更新することも可能です。

データ可視化.png

こんな人におすすめ

  • Criteo広告のレポートデータを分析基盤・DWH(データウェアハウス)に取り込みたい方
  • 広告レポートをCSVファイルにエクスポートして分析基盤に取り込むのに時間がかかり、より効率化したいと考えている方
  • 広告管理画面からデータ取得を行う作業に疲れている方

1. trocco®でCriteo → Amazon Redshiftの転送自動化

データの転送のためにはtrocco®のアカウント・Amazon Redshiftを利用するAWSのアカウントが必要です。

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

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

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

image.png

転送元に「Criteo」を指定し、転送先に「Amazon Redshift」を選択して転送設定作成ボタンを押します。

転送設定の新規作成.png

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

1-2. Criteoとの連携設定

trocco®には社内のユーザー間でグループを作成し、他のメンバーと転送設定を共有する機能があります。グループのメンバーにも設定がわかるように転送設定の名前とメモを入力しておきましょう。

概要設定.png

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

転送元設定.png

別のタブで接続情報の新規作成画面が開きます。
データを取得したいCriteoアカウントの情報を入力し、接続情報を作成します。

Criteo接続設定.png

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

接続情報追加.png

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

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

どのようなデータを取得するかを設定していきます。
今回は日別のクリック数に関するデータを取得してみます。

転送元設定②.png

1-4. 転送先Amazon Redshiftの設定

転送元と同様に設定していきます。まず、Amazon Redshiftの接続情報を作成していきます。

転送先となるAmazon Redshiftの接続先ホスト、接続先ポート、ユーザー名、パスワードを設定し、AWSのアクセスキーIDとシークレットアクセスキーを設定する必要があります。
AWSのアクセスキーとシークレットアクセスキーの取得方法は以下の通りです。

  1. IAM コンソール を開きます。
  2. ナビゲーションメニューで [ユーザー] を選択します。
  3. IAM ユーザー名 (チェックボックスではありません) を選択します。
  4. [認証情報] タブを開き、次に [アクセスキーの作成] を選択します。
  5. 新しいアクセスキーを表示するには、[表示] を選択します。認証情報は次のようになります。
  6. アクセスキー ID: AKIAIOSFODNN7EXAMPLE
  7. シークレットアクセスキー: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
  8. キーペアをダウンロードするには、[.csv ファイルのダウンロード] を選択します。キーを含む .csv ファイルを安全な場所に保存します。
redshift設定.png

先ほど作成した接続情報を選択し、データベース名、スキーマ、テーブルなど必要な情報を設定していきます。(データベース、スキーマ、テーブルは事前にRedshiftで作成しておく必要があります。)

転送先設定.png

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

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

データの転送イメージがスキーマプレビューとして作成されます。

スキーマプレビュー.png

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

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

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

スケジュール.png

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

スケジュール追加.png

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

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

実行.png

これで転送は完了です。

2. Amazon Redshiftの設定

Amazon Redshift側で特に操作は必要ありません。念の為、Amazon Redshiftのコンソール画面から確認してみると、確かにデータが転送されています。

redshiftデータ.png

3. Lookerで可視化

まずはRedshiftとLookerを接続します。管理タブを開いて「データベース」の接続を開きます。

looker接続.png

接続しているデータベース一覧が表示されています。ここで「Add Connection」を選択し、接続設定を行う画面が表示されるので、情報を入力していきます。

addconnection.png
connectionsetting.png

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

プロジェクトの管理.png

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

newlookerml.png
newproject.png

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

model編集.png
views定義.png

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

newdash.png

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

explorer選択.png

ディメンションとメジャーを設定し、Tileに表示したいデータをプロットします。ここでは日別のクリック数を分析していきたいので、ディメンションに「日付」とメジャーに「クリック数」を選択します。

データ表示.png

クリック数の推移を分析したいので折れ線グラフに変更し、日付順に並び替えます。

データ可視化.png

これで完成です。

まとめ

いかがでしたでしょうか。trocco®を使うと、Criteoの管理画面を触ることなく、簡単にレポートデータを取得し、DWH(今回はAmazon Redshift)に統合することが出来ました。


ぜひ広告データ分析の際にはtrocco®をご活用ください。

実際に試してみたい場合は、クレジットカード不要のフリープランや無料の製品資料を提供しているので、この機会にぜひ一度お試しください。

hirokazu.kobayashi

慶應義塾大学卒業後、2014年より株式会社リブセンスへ入社。データエンジニアとして同社分析基盤立ち上げをリードする。2017年より現職primeNumberに入社。自社プロダクト「systemN」におけるSpark/Redshift活用等のデータエンジニアリング業務を行うかたわら、データ統合業務における工数削減が課題だと感じ、データ統合を自動化するサービス「trocco®」を立ち上げる。