SQLServerからMarketoへの連携をノーコードで作成:CData Arc

by 宮本航太 | 2020年03月12日

こんにちは!最近は Marketo API ばかりを触っている宮本です!

今回は ノーコードデータ連携ツールの CData Arc を使って、SQLServer からマーケティングツールでおなじみの Marketo へデータ連携する方法をご紹介したいと思います。

CData Arc とは?

CData Arc はノーコードでETL/EAI などのデータ連携や EDI などの企業間での各種取引情報連携を実現できるWebアプリケーションです。

https://arc.cdata.com/
f:id:sennanvolar44:20200219072923p:plain

今回はこの CData Arc と CData Marketo ADO.NET Provider を組み合わせてデータ連携行います。Visual Studio などをインストールしておくことで、デフォルトで SQLServer へは接続可能となります。

シナリオ

SQLServer で管理されている顧客情報から見込み顧客名、Email、作成日時、更新日時をMarketo に連携するジョブを作成し実行します。
f:id:sennanvolar44:20200312104311p:plain

必要なもの

以下の製品のインストールが必要になります。すべて30日間のトライアルが提供されていますので、是非試してみてください。

事前準備

まず使用する製品をそれぞれインストールします。以下のページから、CData Arc の本体を入手できます。必要に応じて、Windows、Java/Linux、Cloud Hosted のバージョンから選択してください。なお、本記事ではWindows ベースで進めます。

https://arc.cdata.com/download/ f:id:sugimomoto:20200127165940p:plain

インストールはそのままダイアログに従って進めれば大丈夫です。難しいところは特にありませんが、ログインする際のパスワード入力を求められる場所がありますので、忘れてしまわないように注意しましょう。

f:id:sugimomoto:20200127165947p:plain

また CData Arc には Marketo の接続用ライブラリが含まれていませんので、それらを個別で CData のサイトから入手し、インストールします。

それぞれ以下の URL から入手可能です。

https://www.cdata.com/jp/drivers/marketo/ado/
f:id:sennanvolar44:20200311222844p:plain

こちらのインストールもそのまま進んでいくだけで大丈夫です。

SQLServer には、Email、見込み顧客名、会社名などの項目で構成されているテーブルを用意しています。
f:id:sennanvolar44:20200312122027p:plain

CData Arc でジョブ作成~実行

CData Arc を起動後、ログイン画面が表示されるので、CData Arc のインストール時に設定したパスワードを入力してログインします。 f:id:sennanvolar44:20200219113136p:plain

SQLServer の設定

左側のサイドメニューの Database にカーソルを当てると、「+」が表示されますのでクリックします。
f:id:sennanvolar44:20200219114115p:plain

コネクタId に今回は「SQLServer-CData」と入力しました。入力後、「コネクタを作成」をクリックします。 f:id:sennanvolar44:20200311232935p:plain

ドライバー名の項目がプルダウンとなっていますので、SQLServer を選択します。あとはサーバ名やユーザ名など、それぞれの項目に SQLServer の情報を入力してください。 f:id:sennanvolar44:20200219114853p:plain

入力後「接続のテスト」をクリックし、画面上部に”成功しました”とメッセージが表示されましたら、右上にある「変更を保存」をクリックして接続情報を保存します。

次に SQLServer のどのテーブルのデータを取得するかを設定していきます。 マッピングの「アウトプット」→「+」の順にクリックし、その後に表示される「テーブルまたはビュー」をクリックします。 f:id:sennanvolar44:20200219115312p:plain

SQLServer のテーブルが表示されるので、連携対象のテーブル「顧客情報」を選択し、「次へ」をクリックします。

ここでは、SQLServer から取得する際の条件を指定します。
画面上部のカラムエリアで取得対象カラムにチェックを入れると、クエリエリアに自動的にクエリが作成されます。クエリを入力する場合は、「カスタムクエリの記述」にチェックを入れてください。

f:id:sennanvolar44:20200312122602p:plain

ちなみに、クエリエリアの下に Advanced という項目がありますが、ここでは新規レコード、または変更レコードのみを取得する設定を行うことができます。日時項目を取得対象に含めている場合は、ここで項目を指定することにより、最後に連携したレコードの指定項目にある値(日時)から更新があったレコードのみを取得対象とします。

f:id:sennanvolar44:20200312123635p:plain

これで SQLServer の設定が完了しましたので、右上にある「変更を保存」で保存を行ってください。

Marketo の設定

Marketo は 先ほどインストールした CData ADO.NET を使いますので、サイドメニューの「エンタープライズ」にある、CData の「+」をクリックします。 f:id:sennanvolar44:20200219122617p:plain

先ほどと同じように名前を入力した後、接続設定画面が表示されます。 データソースに「CData Marketo」を選択後、接続情報を入力し、接続のテストを行います。成功であれば保存します。

f:id:sennanvolar44:20200311235340p:plain

マッピングの設定を行います。Marketo はデータを受ける方なので「インプット」を選択後、「+」→「テーブルまたはビュー」をクリックします。 f:id:sennanvolar44:20200219132026p:plain

今回は Leads テーブルへ更新を行う予定ですので、Leads テーブルを選択します。
f:id:sennanvolar44:20200311235720p:plain

選択後、Marketo に登録する項目を設定します。UPSERT する場合はUPSERTを ON にします。今回は Email、FirstName、LastNameだけを Leads テーブルをに新していきますので、対象カラムを選択します。

保存後、右にあるコードマークをクリックします。
f:id:sennanvolar44:20200312000518p:plain

Emai の項目に「key="true"」でキー設定を行います。
f:id:sennanvolar44:20200312124145p:plain

以上で Marketo の設定が完了し、ジョブのデータIN/OUT までを作成することができました。次は SQLServer と Marketo のデータをマッピングする設定を行っていきます。
f:id:sennanvolar44:20200312002043p:plain

Mapping の設定

サイドメニューより「XML Map」を選択します。 f:id:sennanvolar44:20200219133912p:plain

一度「変更を保存」で XML Map を保存します。 f:id:sennanvolar44:20200219134136p:plain

以下のように「SQLServer」→「XML Map」→「Marketo」の流れになるように線をつなげていき、右側にある保存アイコンをクリックして今の状態を保存します。

f:id:sennanvolar44:20200312002416p:plain

「XML Map」をクリックすると以下の画面が表示されます。ここでは、実際に項目のマッピングを設定します。 まずは、先ほど作成した接続内容をそれぞれに設定します。ソースファイルに SQLServer 、デスティネーションに Marketo です。 画面下部のマッピングは、ドラッグ&ドロップでできますので、対応する項目に設置してください。設定が終わりましたら、「変更を保存」をクリックします。

f:id:sennanvolar44:20200312133059p:plain

ジョブ実行

まずは Marketo の更新対象レコードは今この状態になっています。いま Marketo に登録されているデータは「[email protected]」のみになりますので、1件は更新、残り2件は追加となる想定です。
f:id:sennanvolar44:20200312133533p:plain

では実行していきます。
作成した SQLServer のコネクタをクリックし、「アウトプット」タブで以下の画面が表示されます。ジョブを実行する場合は、受信ボタンをクリックするとスタートします。 f:id:sennanvolar44:20200219141207p:plain

実行されると以下のように、取得したレコードが一覧で表示されます。 f:id:sennanvolar44:20200219141523p:plain

実行後、Marketo にデータが連携されたかどうか確認してみると、FirstName、LastName に値が入り、2件レコードが追加されました。
f:id:sennanvolar44:20200312135537p:plain

ジョブのスケジューリング

SQLServer の設定画面から「オートメーション」タブをクリックすると以下の画面が表示されます。受信のチェックボックスにチェックを入れると、実行間隔を設定することができます。 f:id:sennanvolar44:20200219140650p:plain

おわりに

ノーコードでSQLServer から Marketo に連携することができました。SQLServer、Marketo 以外にも CData のコネクタを組み合わせることで、様々な連携先を指定することができます。30日間無料でお使いいただくことができますので、是非お試しください!

関連コンテンツ

トライアル・お問い合わせ

30日間無償トライアルで、CData のリアルタイムデータ連携をフルにお試しいただけます。記事や製品についてのご質問があればお気軽にお問い合わせください。