製品をチェック

Zuora Driver の30日間無償トライアルをダウンロード

 ダウンロードはこちら

製品の詳細

Zuora アイコン Zuora JDBC Driver 相談したい

Zuora データを組み込んだパワフルなJava アプリケーションを短時間・低コストで作成して配布できます。

Zuora データ のPostgreSQL インターフェースを作成

Zuora JDBC Driver のリモート機能を使用し、データアクセス用のPostgreSQL エントリポイントを作成します。

加藤龍彦
ウェブデベロッパー

最終更新日:2022-12-02
zuora ロゴ

CData

jdbc ロゴ画像
PostgreSQL ロゴ

こんにちは!ウェブ担当の加藤です。マーケ関連のデータ分析や整備もやっています。

PostgreSQL には多くの対応クライアントがあります。標準のドライバーからBI、アナリティクスツールまで、PostgreSQL はデータ接続の人気のインターフェースです。JDBC ドライバーを使用することで、簡単に任意の標準クライアントから接続できるPostgreSQL エントリポイントを作成できます。

Zuora にPostgreSQL データベースとしてアクセスするには、CData JDBC Driver for Zuora とJDBC foreign data wrapper (FDW) を使用します。この記事ではFDW をコンパイルしてインストールし、PostgreSQL サーバーからZuora にクエリを実行します。

JDBC データソースとしてZuora データに接続する

JDBC データソースとしてZuora に接続するには、以下が必要です。

  • Driver のJAR パス:JAR ファイルは、インストールディレクトリのlib サブフォルダにあります。
  • Driver クラス

    cdata.jdbc.zuora.ZuoraDriver
  • JDBC URL: URL は、"jdbc:zuora:" で始まり、セミコロンで区切られた名前と値の組み合わせで任意の接続プロパティを含めることができます。

    Zuora はユーザー認証にOAuth 標準を使用しています。OAuth 認証ついて詳しくは、オンラインヘルプドキュメントを参照してください。

    Tenant プロパティの設定

    プロバイダへの有効な接続を作成するには、アカウントの設定と合致するテナント値を1つ選択する必要があります。以下は、利用可能なオプションのリストです。

    • USProduction:リクエストはhttps://rest.zuora.com に送信されます。
    • USAPISandbox:リクエストはhttps://rest.apisandbox.zuora.com に送信されます。
    • USPerformanceTest:リクエストはhttps://rest.pt1.zuora.com に送信されます。
    • EUProduction:リクエストはhttps://rest.eu.zuora.com に送信されます。
    • EUSandbox:リクエストはhttps://rest.sandbox.eu.zuora.com に送信されます。

    デフォルトではUSProduction テナントを使用します。

    Zuora サービスの選択

    データクエリとAQuA API の2つのZuora サービスを使用します。デフォルトでは、ZuoraServiceAQuADataExport に設定されています。

    DataQuery

    データクエリ機能は、非同期の読み取り専用SQL クエリを実行することで、Zuora テナントからのデータのエクスポートを実現します。 このサービスは、素早く軽量なSQL クエリでの使用を推奨します。

    制限

    • フィルタ適用後の、テーブルごとの入力レコードの最大数: 1,000,000
    • 出力レコードの最大数: 100,000
    • テナントごとの、実行用に送信される同時クエリの最大数: 5
    • テナントごとの、同時クエリの制限に達した後に実行用に送信され、キューに追加されるクエリの最大数: 10
    • 1時間単位での、各クエリの最大処理時間: 1
    • GB 単位での、各クエリに割り当てられるメモリの最大サイズ: 2
    • Index Join を使用する際のインデックスの最大値。言い換えれば、Index Join を使用する際にWHERE 句で使われる一意の値に基づいた、左のテーブルから返されるレコードの最大数: 20.000

    AQuADataExport

    AQuA API のエクスポートは、すべてのオブジェクト(テーブル)のすべてのレコードをエクスポートするように設計されています。AQuA のクエリジョブには以下の制限があります。

    制限

    • AQuA のジョブ内のクエリが8時間以上実行されている場合、ジョブは自動的に停止されます。
    • 停止されたAQuA のジョブは3回再試行可能で、その後失敗として返されます。

    ビルトイン接続文字列デザイナ

    JDBC URL の構成については、Zuora JDBC Driver に組み込まれている接続文字列デザイナを使用できます。JAR ファイルのダブルクリック、またはコマンドラインからJAR ファイルを実行します。

    java -jar cdata.jdbc.zuora.jar

    接続プロパティを入力し、接続文字列をクリップボードにコピーします。

    Using the built-in connection string designer to generate a JDBC URL (Salesforce is shown.)

    以下は一般的なJDBC URL です。

    jdbc:zuora:OAuthClientID=MyOAuthClientId;OAuthClientSecret=MyOAuthClientSecret;Tenant=USProduction;ZuoraService=DataQuery;InitiateOAuth=GETANDREFRESH

JDBC FDW を構築する

FDW は、PostgreSQL を再コンパイルせずに、PostgreSQL の拡張機能としてインストールできます。例としてjdbc2_fdw 拡張子を使用します。

  1. ご使用のバージョンのJRE 共有オブジェクトから、/usr/lib/libjvm.so にシンボリックリンクを追加します。コマンド例: ln -s /usr/lib/jvm/java-6-openjdk/jre/lib/amd64/server/libjvm.so /usr/lib/libjvm.so
  2. ビルドするには、以下のコマンドを実行してください。 make install USE_PGXS=1

Zuora データをPostgreSQL データベースとしてクエリする

拡張機能をインストールした後、以下のステップに従ってZuora へのクエリの実行を開始します。

  1. データベースにログイン
  2. データベースの拡張機能をロード CREATE EXTENSION jdbc2_fdw;
  3. Zuora のオブジェクトを作成 CREATE SERVER Zuora FOREIGN DATA WRAPPER jdbc2_fdw OPTIONS ( drivername 'cdata.jdbc.zuora.ZuoraDriver', url 'jdbc:zuora:OAuthClientID=MyOAuthClientId;OAuthClientSecret=MyOAuthClientSecret;Tenant=USProduction;ZuoraService=DataQuery;InitiateOAuth=GETANDREFRESH', querytimeout '15', jarfile '/home/MyUser/CData/CData\ JDBC\ Driver\ for\ Salesforce MyDriverEdition/lib/cdata.jdbc.zuora.jar');
  4. PostgreSQL デーモンに認識されているユーザーのユーザー名とパスワードのユーザーマッピングを作成 CREATE USER MAPPING for postgres SERVER Zuora OPTIONS ( username 'admin', password 'test');
  5. ローカルデータベースに外部テーブルを作成 postgres=# CREATE FOREIGN TABLE invoices ( invoices_id text, invoices_Id text, invoices_BillingCity numeric) SERVER Zuora OPTIONS ( table_name 'invoices');
Zuora に対して 読み取り/書き込みコマンドを実行可能にする postgres=# SELECT * FROM invoices;

おわりに

このようにCData JDBC Driver for Zuora を使って簡単にZuora データを取得して検索対象にすることができました。ぜひ、30日の無償評価版 をお試しください。

関連コンテンツ

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

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