Mule アプリケーションからElasticsearch データにアクセス:CData JDBC Driver

製品をチェック

無償トライアル:

ダウンロードへ

製品の詳細情報へ:

Elasticsearch JDBC Driver

Elasticsearch 連携のパワフルなJava アプリケーションを素早く作成して配布。


CData JDBC Driver for Elasticsearch とHTTP、SQL を組み合わせれば、Elasticsearch データのJSON エンドポイントに接続できるMule アプリケーションを簡単に作成できます。



CData JDBC Driver for Elasticsearch はElasticsearch データをMule アプリケーションと連携することで、読み、書き、更新、削除といった機能をおなじみのSQL クエリを使って実現します。JDBC ドライバーを使えば、Elasticsearch データをバックアップ、変換、レポート作成、分析するMule アプリケーションをユーザーは簡単に作成できます。

本記事では、Mule プロジェクト内でCData JDBC Driver for Elasticsearch を使用して、Elasticsearch データのWeb インターフェースを作成する方法を紹介します。作成したアプリケーションを使えば、HTTP 経由でElasticsearch データをリクエストして、JSON 形式で結果を取得できます。まったく同様の手順で、すべてのCData JDBC Driver で240 を超えるデータソースのWeb インターフェースを作成できます。手順は以下のとおりです。

  1. Anypoint Studio で新しいMule プロジェクトを作る。
  2. Message Flow にHTTP コネクタを追加する。
  3. HTTP コネクタのアドレスを設定する。
  4. HTTP コネクタの追加後、Database Select コネクタを同じフローに追加する。
  5. データベースへの新しい接続を作成し(または既存の接続を編集し)、プロパティを設定する。
    • 接続を「Generic Connection」に設定
    • Required Libraries セクションでCData JDBC Driver のJAR ファイルを指定する(例:cdata.jdbc.elasticsearch.jar)。
    • Elasticsearch の接続文字列にURL を指定

      接続するには、Server およびPort 接続プロパティを設定します。 認証には、User とPassword プロパティ、PKI (public key infrastructure)、またはその両方を設定します。 PKI を使用するには、SSLClientCert、SSLClientCertType、SSLClientCertSubject、およびSSLClientCertPassword プロパティを設定します。

      本製品は、認証とTLS/SSL 暗号化にX-Pack Security を使用しています。TLS/SSL で接続するには、Server 値に'https://' を接頭します。Note: PKI を 使用するためには、TLS/SSL およびクライアント認証はX-Pack 上で有効化されていなければなりません。

      接続されると、X-Pack では、設定したリルムをベースにユーザー認証およびロールの許可が実施されます。

      組み込みの接続文字列デザイナ

      JDBC 用のURL の作成にサポートが必要な場合は、Elasticsearch JDBC Driver に組み込まれた接続文字列デザイナを使用できます。JAR ファイルをダブルクリックするか、コマンドラインからJAR ファイルを実行してください。

      java -jar cdata.jdbc.elasticsearch.jar

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

    • Driver クラス名をcdata.jdbc.elasticsearch.ElasticsearchDriver に指定します。
    • 「接続テスト」をクリックします。
  6. SQL Query Text をElasticsearch データをリクエストするためのSQL クエリに設定します。例えば、SELECT Orders.Freight, Customers.ContactName FROM Customers INNER JOIN Orders ON Customers.CustomerId=Orders.CustomerId
  7. Transform Message コンポーネントをフローに追加します。
  8. Output スクリプトを次のように設定して、ペイロードをJSON に変換します。
    %dw 2.0
    output application/json
    ---
    payload
            
  9. Elasticsearch データを閲覧するには、HTTP コネクタ用に設定したアドレスに移動します(デフォルトでは、localhost:8081):http://localhost:8081。Web ブラウザおよびJSON エンドポイントを使用可能な他のツール内で、Elasticsearch データをJSON として利用できます。

これで、カスタムアプリケーションおよび他のさまざまなBI、帳票、ETL ツールからElasticsearch データを(JSON データとして)扱うための簡易なWeb インターフェースを作成できました。Mule アプリケーションからお好みのデータソースにアクセスできる、JDBC Driver for Elasticsearch の30日間無償トライアルのダウンロードはこちらから。