Hightouchを使ってTableauで分析した結果をBrazeに連携してみた

2023.07.13

さがらです。

Hightouchを使ってTableauで分析した結果をBrazeに連携してみたので、その検証内容を本記事でまとめてみます。

検証内容について

HightouchはReverseETLのツールですが、Tableauで分析した集計データをデータソースとして登録し、Brazeなどの各アプリケーションにデータを連携することが出来ます。

今回はこの機能を用いて、Tableauで分析した結果を元にMAツールであるBrazeでセグメントを切れるように、Tableau⇨Hightouch⇨Brazeという流れでデータ連携を行ってみます。

事前準備

Hightouchで設定する前に、BrazeとTableauで事前準備が必要なので、その内容について説明します。

Braze関係

ユーザーデータ

下図のように、事前に対象のWorkspaceでTableauで分析対象となるユーザーデータを登録しておきます。(今回は、Mixpanelに対してDM3で生成したダミーユーザー12000件を登録しています。)

Hightouch上でBrazeをDestinationとして設定

今回はTableauからBrazeへHightouchを使ってデータを連携させるため、事前に対象となるBrazeのWorkspaceをHightouchでDestinationとして設定しておきます。

このBrazeをDestinationとする手順については、下記のブログも参考になるかと思います。※このときのブログの内容と比較して、現在はHightouchとBraze連携で出来ることも増えておりますので、公式Docもぜひ併せてご覧ください。

Tableau関係

分析を行った結果を保持するワークブックをパブリッシュ

HightouchでTableauで分析した結果を連携させるためには、事前にTableau Cloud/Serverにパブリッシュしておく必要があります。

今回の検証では「注文完了」のイベントが発生した回数をユーザーごとにカウントするViewを事前に作成し、Tableau Cloudにパブリッシュしておきます。

使用するTableau Cloud/Serverでアクセストークンを取得

HightouchでTableau Cloud/Serverをデータソースとして設定するためには、「ユーザー名・パスワード」か「アクセストークン」が必要となります。

今回は個人用のアクセストークンで進めるため、事前に使用するユーザーで個人用アクセストークンを作成しておきます。

表示されたシークレットは後で使用するため、忘れずにコピーしておきましょう。

Hightouchでの設定

ここからは、Hightouch上でTableau⇨BrazeをSyncするために必要なTableau関連の設定について書いていきます。

具体的には以下3点について書きます。

  • HightouchでTableauをData Sourceとして設定
  • HightouchでTableauのViewをModelとして設定
  • Hightouch上でTableau⇨BrazeのSync設定

HightouchでTableauをData Sourceとして設定

Hightouchで左のメニューからSourcesを押します。

右上のAdd sourceを押します。

設定するデータソースの一覧が出ますので、Tableauを選択します。

すると、Tableauを設定するための画面に移ります。

まず、Choose an authentication methodは今回はアクセストークンを使用するため、Personal access tokenを選択します。

Choose your connection typeは、SSHトンネルなどを介して接続したい場合には特別な設定が必要ですが、今回は不要のためConnect directly to Tableauを選択します。

Configure your Tableau sourceでは、以下の用に設定します。

  • URL:使用しているTableau Cloud/Serverのサイト名まで含むURLをコピーして貼り付け
  • Personal access token name:事前にTableau Cloud/Server上で作成したアクセストークンの名前を入力
  • Personal access token secret:事前にTableau Cloud/Server上でアクセストークンを作成した際に表示されたシークレットを入力

ここまで入力を終えたら、右下のContinueを押します。

すると、設定したTableau Cloud/Serverへの接続テストが行われます。無事にSuccessfulとなりましたら、右下のContinueを押します。

最後に、Data Source名を決めて右下のFinishを押せば、TableauをHightouchのData Sourceとして設定することは完了です!

HightouchでTableauのViewをModelとして設定

続いて、HightouchでTableauのViewをModelとして設定していきます。

まず、Hightouchの左のメニューからModelsを選択します。

右上のAdd modelを押します。

先程作成したTableauのData Sourceを選択します。

使用したいWorkbookとViewを選択します。Max Data Age in minutesは、結果をキャッシュとして保持しておく時間を分単位で設定可能です、基本的にはデフォルトの「1」で問題ないと思います。

同じ画面でPreview resultsを押すと、実際にModelとして登録されるデータをプレビューすることが出来ます。

問題なければ、右下のContinueを押します。

最後に、Model nameDescriptionPrimary keyを設定します。Primary keyは対象のViewの集計結果でPrimary Keyとなるフィールドを選択すればOKです。

問題なければ、右下のFinishを押せば、TableauのViewをModelとして設定完了です!

Hightouch上でTableau⇨BrazeのSync設定

次に、Hightouch上でTableau⇨BrazeのSync設定を行います。

今回は、事前にTableauでユーザーごとの「注文完了」イベントの回数をカウントするViewを作っていたため、ユーザーごとの注文完了回数をBrazeのユーザー属性として連携し、Braze上でユーザーの注文完了回数ごとにセグメントを切れるようにしてみます。

まず、HightouchのメニューでSyncsを押します。

画面右上のAdd syncを押します。

Modelの選択画面となるので、先程設定したTableauのViewを選択します。

続いてDestinationの選択画面となるので、事前に設定済のBrazeを選択します。

ここからはBrazeのどのオブジェクトに連携するかの設定となります。

What would you like Hightouch to send to Braze?はユーザーデータに連携したいのでObjectを選択します。

Which Braze object would you like to sync data to?Userを選択します。

How do you want to update the records in Braze?は、UpsertUpdateお好みの方法を選びましょう。今回は別の処理でBrazeに登録済のユーザーデータに対してのみ更新をかけたいので、Updateにしておきます。

How should records between query results and records in Braze be matched?では、Tableauの集計結果とBrazeのユーザーデータが紐づくようにカラムを選択します。

少し飛ばして、Which custom columns would you like to sync to custom fields in Braze?で、今回新しく追加したい注文回数を追加します。

ここまで設定が出来たら、右下のContinueを押します。

DescriptionSchedule typeを決めたら、右下のFinishを押します。

これで、Tableau⇨BrazeのSync設定は完了です!

実際にTableau⇨BrazeのSyncをしてみた

最後に、実際にこれまで設定した内容を用いてSyncしてみます。

作成したSync画面で、右上のRunを押してみます。

数秒後、無事にSyncが終わりました。

この状態でBrazeのユーザー画面を確認すると、ちゃんとCustom Attributesとして「合計注文回数」が追加されていました!

最後に

Hightouchを使ってTableauで分析した結果をBrazeに連携する際の流れを本記事でまとめてみました。

今回はBraze上で値を決めてセグメントを切れるように「合計注文回数」という回数自体をSyncしてみましたが、Tableau上で分析した結果対象となるユーザーにフラグを立てるような形式にし、Brazeにはそのフラグの値を連携させてそのフラグが立っている場合はセグメントの対象とする、ということも可能です!

Tableauで分析した結果をそのままMAツールなど実際にアクションを起こすアプリケーションに連携できるのは非常に強力だと思います。

Hightouchは多くのアプリケーションと連携可能ですので、もしお使いのツールがあってTableauも使用されているならば、ぜひHightouchを使った連携を検討ください!