Cvent のデータをSQL Server に同期(キャッシュ)する方法

キャッシュ機能を使って、Cvent の任意のエンドポイントをSQL Server にキャッシュ同期

古川えりか
コンテンツスペシャリスト

最終更新日:2022-06-30

こんにちは!ドライバー周りのヘルプドキュメントを担当している古川です。



Cvent のデータをDB にコピーするニーズは多いです。例えば、データのバックアップのため、 データをDB にデータレイク的に格納して他のアプリケーションやBI、ETL ツールから連携利用するなどです。

ただし、JSON やXML 形式であったりスキーマレスなデータなどを、DB に格納できるようにスキーマ定義をしながらデータを同期することは大きな手間です。 しかも、SaaS やNoSQL などのデータはスキーマレスであったり、スキーマが頻繁に変更されます。

Driver 技術では、Cvent のデータをテーブルにモデル化し、スキーマを付与してDB への格納を容易にします。 本記事では、CACHE コマンドだけで、SQL Server にCvent のデータの同期を取る方法を説明します。

同期先となるデータベースの準備

この例では、SQL Server を使います。難しい手順は不要で、SQL Server に任意の名前の新しい同期DB を作成しておくだけです。

CData ODBC ドライバとは?

CData ODBC ドライバは、以下のような特徴を持った製品です。

  1. Cvent をはじめとする、CRM、MA、会計ツールなど多様なカテゴリの270種類以上のSaaS / オンプレデータソースに対応
  2. 多様なアプリケーション、ツールにCvent のデータを連携
  3. ノーコードでの手軽な接続設定
  4. 標準SQL での柔軟なデータ読み込み・書き込み

CData ODBC ドライバでは、1.データソースとしてCvent の接続を設定、2.SQL Server 側でODBC Driver との接続を設定、という2つのステップだけでデータソースに接続できます。以下に具体的な設定手順を説明します。

CData ODBC ドライバのインストールとCvent への接続設定

まずは、本記事右側のサイドバーからCvent ODBC Driver の無償トライアルをダウンロード・インストールしてください。30日間無償で、製品版の全機能が使用できます。

ODBC 接続プロパティの指定がまだの場合は、DSN (データソース名)で接続設定を行います。Microsoft ODBC データソースアドミニストレーターを使ってODBC DSN を作成および設定できます。ODBC ドライバーのインストール完了時にODBC DSN 設定画面が立ち上がります。 Microsoft ODBC データソースアドミニストレーターを開いて設定を行うことも可能です。 必要なプロパティを設定する方法は、ヘルプドキュメントの「はじめに」をご参照ください。

Cvent への認証を行う前に、ワークスペースとOAuth アプリケーションを作成する必要があります。

ワークスペースの作成

ワークスペースを作成するには:

  1. Cvent にサインインし、App Switcher(ページ右上の青いボタン) -> Admin に移動します。
  2. Admin メニューから、Integrations -> REST API に移動します。
  3. Developer Management の新しいタブが立ち上がります。新しいタブでManage API Access をクリックします。
  4. Workspace を作成し、名前を付けます。開発者にアクセスさせたいスコープを選択します。スコープは、開発者がアクセスできるデータドメインを制御します。
    • All を選択すると、開発者は任意のスコープ、およびREST API にこれから追加されるスコープを選択できます。
    • Custom を選択すると、開発者がOAuth アプリで選択できるスコープを、選択したスコープに制限できます。本製品によって公開されるすべてのテーブルにアクセスするには、次のスコープを設定する必要があります。
      event/attendees:readevent/attendees:writeevent/contacts:read
      event/contacts:writeevent/custom-fields:readevent/custom-fields:write
      event/events:readevent/events:writeevent/sessions:delete
      event/sessions:readevent/sessions:writeevent/speakers:delete
      event/speakers:readevent/speakers:writebudget/budget-items:read
      budget/budget-items:writeexhibitor/exhibitors:readexhibitor/exhibitors:write
      survey/surveys:readsurvey/surveys:write

OAuth アプリケーションの作成

Workspace を設定して招待すると、開発者はサインアップしてカスタムOAuth アプリを作成できます。手順については、ヘルプドキュメントカスタムOAuth アプリケーションの作成を参照してください。

Cvent への接続

OAuth アプリケーションを作成したら、次の接続プロパティを設定してCvent に接続します。

  • InitiateOAuthGETANDREFRESH。OAuthAccessToken を自動的に取得およびリフレッシュするために使用します。
  • OAuthClientId:OAuth アプリケーションに関連付けられたClient ID。これは、Cvent Developer Portal のApplications page ページにあります。
  • OAuthClientSecret:OAuth アプリケーションに関連付けられたClient secret。これは、Cvent Developer Portal のApplications page ページにあります。

通常のDSN 設定に加え、キャッシュ関連項目の設定が必要です:
Cache Connection:以下をセミコロン区切りで入力
Cache Provider:SQL Server ではSystem.Data.SqlClient

Server=server name;Database=database name;User ID=your id;Password=password;

Visual Studio からキャッシュを実行

Visual Studio のサーバーエクスプローラーから「データ接続」を右クリックして「接続の追加」を選択します。
データソース選択画面で「Microsoft ODBC データソース」を選択します。

サーバーエクスプローラーには、「ODBC.Cvent.CData」というコネクションができています。 展開するとCvent のデータがテーブルよびビューとしてモデル化されて表示されます。 これらのオブジェクトは通常のSQL で操作することができます。

キャッシュクエリの実行

以下のキャッシュコマンドを作成し、実行します。 実行時にクエリテキストエラーが出ても気にせず続行してください。

CACHE SELECT * FROM "Target Table"

キャッシュ結果をSQL Server で確認

データベースの下にkintone の選択したアプリが同期されています。キレイにDB 向けにスキーマも付いてます。普通にSQL でアプリケーション内で使ってください。

関連コンテンツ

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

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