Mule アプリケーションからCleverPush のデータにアクセス:CData JDBC Driver
CData JDBC Driver for API はCleverPush のデータをMule アプリケーションと連携することで、読みといった機能をおなじみのSQL クエリを使って実現します。JDBC ドライバーを使えば、CleverPush のデータをバックアップ、変換、レポート作成、分析するMule アプリケーションをユーザーは簡単に作成できます。
本記事では、Mule プロジェクト内でCData JDBC Driver for API を使用して、CleverPush のデータのWeb インターフェースを作成する方法を紹介します。作成したアプリケーションを使えば、HTTP 経由でCleverPush のデータをリクエストして、JSON 形式で結果を取得できます。まったく同様の手順で、すべてのCData JDBC ドライバで数百種類のデータソースのWeb インターフェースを作成できます。手順は以下のとおりです。
- Anypoint Studio で新しいMule プロジェクトを作る。
- Message Flow にHTTP コネクタを追加する。
- HTTP コネクタのアドレスを設定する。

- HTTP コネクタの追加後、Database Select コネクタを同じフローに追加する。
- データベースへの新しい接続を作成し(または既存の接続を編集し)、プロパティを設定する。
- 接続を「Generic Connection」に設定
- Required Libraries セクションでCData JDBC ドライバのJAR ファイルを指定する(例:cdata.jdbc.api.jar)。
- CleverPush の接続文字列にURL を指定
まず、Profile 接続プロパティをディスク上の Cleverpush プロファイルの場所に設定します(例:C:\profiles\Cleverpush.apip)。次に、ProfileSettings 接続プロパティを Cleverpush の接続文字列に設定します(以下を参照)。
Cleverpush API プロファイル設定
CleverPush では、プライベート API キーでリクエストを認証します。API キーは、すべての API 呼び出しで Authorization リクエストヘッダーの値として渡されます。
プライベート API キーは、CleverPush ダッシュボードの「Settings」>「API」で確認できます。サーバーサイドからアクセスする場合は、パブリックキーではなくプライベートキーを使用してください。
以下の接続プロパティを設定すると、接続できるようになります。
- AuthScheme:APIKey に設定します。
- APIKey:CleverPush のプライベート API キーに設定します。
オプションの接続プロパティ
- ChannelId:デフォルトで使用する CleverPush のチャネル識別子に設定します。ほとんどのテーブルではチャネルによるフィルタが必要です。このプロパティを設定しておくと、WHERE 句で毎回 ChannelId を指定しなくてもクエリを実行できます。
組み込みの接続文字列デザイナ
JDBC 用のURL の作成にサポートが必要な場合は、CleverPush JDBC Driver に組み込まれた接続文字列デザイナを使用できます。JAR ファイルをダブルクリックするか、コマンドラインからJAR ファイルを実行してください。
java -jar cdata.jdbc.api.jar接続プロパティを入力して、接続文字列をクリップボードにコピーします。
- Driver クラス名をcdata.jdbc.api.APIDriver に指定します。
- 「接続テスト」をクリックします。
- SQL Query Text をCleverPush のデータをリクエストするためのSQL クエリに設定します。例えば、
。SELECT Id, Name FROM Segments WHERE ChannelId = 'your_channel_id'
- Transform Message コンポーネントをフローに追加します。
- Output スクリプトを次のように設定して、ペイロードをJSON に変換します。
%dw 2.0 output application/json --- payload
- CleverPush のデータを閲覧するには、HTTP コネクタ用に設定したアドレスに移動します(デフォルトでは、localhost:8081):http://localhost:8081。Web ブラウザおよびJSON エンドポイントを使用可能な他のツール内で、CleverPush のデータをJSON として利用できます。
これで、カスタムアプリケーションおよび他のさまざまなBI、帳票、ETL ツールからCleverPush のデータを(JSON データとして)扱うための簡易なWeb インターフェースを作成できました。Mule アプリケーションからお好みのデータソースにアクセスできる、JDBC Driver for API の30日の無償評価版のダウンロードはこちらから。