概要
CriteoはCriteoエンジンによる機械学習を活用し、ユーザーがクリックした商品に関連性の高い商品を提示する広告サービスです。Criteoというサービス名はGoogle広告やFacebook広告といったサービスと比べやや知名度が低いかもしれませんが、Criteo広告自体は多くの方が目にしたことがあると思います。
Criteo広告も他の広告サービス同様インプレッション数やクリック数といったデータの分析は非常に重要です。また他の広告サービスのデータとも絡めた横断的なデータ分析も有効です。
いずれの場合も広告データをデータ分析基盤に統合し、データの高速処理に特化したDWH、データの可視化に特化したBIツール活用していくこととなりますが、データの統合はデータエンジニアリングの知識が必要でデータの知見がないマーケティング部門の方にとっては少しハードルが高いです。
そこで今回はデータ分析基盤構築サービスtrocco®を利用し、複雑なコーディング作業なしにCriteoのデータをAmazon RedshiftというDWHへ統合し、Lookerを利用してデータの可視化を行います。
データの転送手段として採用したtrocco®は、Criteo広告以外に、Yahoo!検索広告、Google広告、Twitter広告、LINE広告などにも対応しています。

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

こんな人におすすめ
- Criteo広告のレポートデータを分析基盤・DWH(データウェアハウス)に取り込みたい方
- 広告レポートをCSVファイルにエクスポートして分析基盤に取り込むのに時間がかかり、より効率化したいと考えている方
- 広告管理画面からデータ取得を行う作業に疲れている方
1. trocco®でCriteo → Amazon Redshiftの転送自動化
データの転送のためにはtrocco®のアカウント・Amazon Redshiftを利用するAWSのアカウントが必要です。
trocco®は無料トライアルを実施しているので、事前に申し込みをしておきましょう。
https://trocco.io/lp/index.html
(申込の際に、この記事を見た旨を記載して頂ければご案内がスムーズに行えます)
1-1. 転送元・転送先を決定
trocco®にアクセスして、ダッシュボードから「転送先を作成」のボタンを押します。

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

設定画面になるので、必要な情報を入力していきます。
1-2. Criteoとの連携設定
trocco®には社内のユーザー間でグループを作成し、他のメンバーと転送設定を共有する機能があります。グループのメンバーにも設定がわかるように転送設定の名前とメモを入力しておきましょう。

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

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

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

これでCriteoとの連携は完了です。
1-3. Criteoからのデータ抽出設定
どのようなデータを取得するかを設定していきます。
今回は日別のクリック数に関するデータを取得してみます。

1-4. 転送先Amazon Redshiftの設定
転送元と同様に設定していきます。まず、Amazon Redshiftの接続情報を作成していきます。
転送先となるAmazon Redshiftの接続先ホスト、接続先ポート、ユーザー名、パスワードを設定し、AWSのアクセスキーIDとシークレットアクセスキーを設定する必要があります。
AWSのアクセスキーとシークレットアクセスキーの取得方法は以下の通りです。
- IAM コンソール を開きます。
- ナビゲーションメニューで [ユーザー] を選択します。
- IAM ユーザー名 (チェックボックスではありません) を選択します。
- [認証情報] タブを開き、次に [アクセスキーの作成] を選択します。
- 新しいアクセスキーを表示するには、[表示] を選択します。認証情報は次のようになります。
- アクセスキー ID: AKIAIOSFODNN7EXAMPLE
- シークレットアクセスキー: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
- キーペアをダウンロードするには、[.csv ファイルのダウンロード] を選択します。キーを含む .csv ファイルを安全な場所に保存します。

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

これで入力は完了です。「保存して自動データ設定・プレビューへ」をクリックし、確認作業に進みましょう。
1-5. データのプレビュー
データの転送イメージがスキーマプレビューとして作成されます。

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

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

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

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

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

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


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

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


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


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

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

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

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

これで完成です。
まとめ
いかがでしたでしょうか。trocco®を使うと、Criteoの管理画面を触ることなく、簡単にレポートデータを取得し、DWH(今回はAmazon Redshift)に統合することが出来ました。
ぜひ広告データ分析の際にはtrocco®をご活用ください。
実際に試してみたい場合は、クレジットカード不要のフリープランや無料の製品資料を提供しているので、この機会にぜひ一度お試しください。
