こんにちは。CData Software Japan リードエンジニアの杉本です。
今日は新しくリリースされた Salesforce Pardot Driver を使って、Google BigQuery にデータを定期的に流し込む方法を紹介したいと思います。
Salesforce Pardot とは?
SFA クラウドサービスで世界的に有名なSalesforce が提供する B to B マーケティングオートメーションサービスです。
https://www.salesforce.com/jp/products/pardot/overview/
Salesforce では もともと Marketing Cloud という、どちらかと言えば B to C 寄りのMA製品も提供していましたが、2017年に新しくこのPardotが追加されています。
Salesforce Pardot でも他の製品群と同様に API が提供されています。今回紹介する製品でも、内部ではこのPardot APIを利用しています。
本記事で実現する内容
本記事で解説するシナリオは Salesforce Pardot の VisitorActivity データをBigQueryに移行する仕組みを構成するというものですが、少し背景をおさえておきたいと思います。
以下の記事でも紹介していますが、現在私達の周りには数多くの SaaS が溢れ、10数年前のようなRDBだけ連携していればいいという時代は過ぎ去っています。
https://www.cdatablog.jp/entry/2019/12/10/231629
アメリカでは一つの企業で平均10~20程度の SaaS を使っているというレポートも存在し、多種多様なアプリケーションを活用しながら企業のビジネスプロセスが動いていることがわかります。
そのような状況では、たとえ「MAのアクティビティを切り口として分析したい」といった要望があったとしても、ディメンション(BIによる分析でよく用いられるようなスタースキーマ文脈における)が各種アプリケーション・SaaSに分散され、「アクティビティデータはこのサービスにあるけれど、ディメンションとして使いたい商品マスタや予算、営業案件データは違うサービスに存在する」ということが頻発してしまいます。
https://docs.microsoft.com/ja-jp/power-bi/guidance/star-schema
そのようなビジネス環境で今求められているのが、ELTの考え方です。多種多様なデータソースから、一度DWHにデータをロードし、DWHで分析や変換処理を回していきます。
引用元:https://docs.microsoft.com/ja-jp/power-bi/guidance/star-schema
そういった背景を踏まえ、本記事ではデータ分析基盤・DWHとして現在多く使われている Google BigQuery に Salesforce Pardot のデータ連携する方法を紹介し、より顧客・リードに関わるデータを分析するための方法を知ってもらうことを目的としています。
本記事で紹介するCDataSyncでは、そのような分析基盤向けデータ統合の自動化をノンコーディングで実現することができるようになっています。また、データソースも Salesforce Pardotだけではなく、各種CRM・ERP、国産クラウドサービスのkintoneやPCA会計などもサポートしているため、多様なデータソースからDWHを構成できます。
なお、本記事では連携先をBigQueryとしましたが、CDataSyncでは以下のような同期先もカバーしています。
https://www.cdata.com/jp/sync/#destinations
[同期先データベースラインアップ]
SQLite,MySQL,MariaDB,PostgreSQL,Apache Derby,SQL Server,Azure SQL,MS Access,Snowflake,Amazon Redshift,Amazon S3,Azure Blob Storage,Google BigQuery,DB2,Oracle,Couchbase,Cassandra,MongoDB,Apache Hadoop,Apache Kafka,SAP HANA,Azure Data Lakes,Azure Event Hubs,CSV/TSV
実施手順
それでは、実施手順を解説していきます。
必要なもの
- Google BigQueryが利用可能な GCPアカウント
- Salesforce Pardot アカウント・UserKey
- CData Sync(本記事で解説します)
Google BigQuery の準備
まずは、データの格納先となる Google BigQueryのプロジェクトとデータセットを構成しておきます。
なお、今回はあらかじめ専用のアカウントを作って対応しています。
手順は特に難しくありません。GCPの管理コンソールへ移動し、新しいプロジェクトを作成
BigQuery に移動し、プロジェクト配下にデータセットを作っておきます。ここに連携結果がテーブルとして格納されます。
以上で BigQuery 側の準備は完了です。
CDataSyncのインストール
それでは、取得した情報を元にCDataSyncの設定を行っていきましょう。
CDataSyncはインストール型のソフトウェアなので、以下のURLからダウンロードして、任意のPCもしくはサーバーでセットアップを行います。(AWS AMI版もあります。)
https://www.cdata.com/jp/sync/
セットアップ後、CData Syncの画面がブラウザで立ち上がるので、セットアップ時に入力したパスワードとユーザー名「admin」を入力して、ログインします。
ログイン後「情報」タブに移動し、「30日間の評価版をアクティベート」を行えば、CDataSyncの初期設定は完了です。
Salesforce Pardot の接続設定
次に Salesforce Pardot からデータを取得するための接続設定を行います。
「接続」タブから「Salesforce Pardot」を選択します。一覧に存在しない場合は「+Add More」から追加しましょう。
PardotにログインするためのUserID・Password、そしてUser Keyを指定して、「接続テスト」をクリックします。接続が成功したら、「変更を保存」をクリックして完了です。
BigQueryへの同期先設定
続いて、同期先となるBigQueryへの接続を構成します。
「接続」→「同期先」から「Google BigQuery」を選択し
あらかじめ作成しておいた、「ProjectId」と「Dataset Id」を入力し、「接続」をクリックします。
クリックすると、OAuthの認証プロセスが開始されますので、対象アカウントでログインし、アクセス許可を承認してください。承認後、設定を保存すれば準備完了です。
ジョブの作成
それでは実際にジョブを作成し、データをBigQueryに連携してみましょう。
ジョブのタブから「ジョブを作成」をクリックし
事前に構成した「Salesforce Pardot」と「BigQuery」を、ソースと同期先としてそれぞれ構成します。
次に連携するデータを決定するために、「テーブルを追加」をクリックし
VisitorActivities テーブルを選択します。
最後にスケジュールタブから定期的に処理にするためにスケジューラーを設定します。
後は設定を保存すれば、完了です。
プレビューの確認
同期できるデータは、予めプレビュー画面から確認できます。
同期対象のテーブルをクリックし
「プレビュー」タブに移動して、「Execute」ボタンをクリックすれば取得されるデータの一覧が表示されます。
テスト実行
テスト実行はテーブルタブから対象となるテーブルを選択し、「実行」ボタンをクリックすることで実施可能です。
ジョブが完了すると、以下のようにメッセージが表示されます。
BigQuery 側も確認してみると、以下のように正常にデータが同期されていました。
おわりに
もし設定などで不明な点があれば、無償のテクニカルサポートも提供しているので、お気軽にお問い合わせください。