データ連携ツールのCloverETL のビジュアルワークフローでElasticsearch データ連携を作成。
CData JDBC Driver for Elasticsearch は、CloverETL からElasticsearch へのcreate, read, update, and delete (CRUD) commands 処理を実現します。本記事では、CloverETL でJDBC Driver を使い、Elasticsearch をシンプルなCSV ファイルに変換します。
JDBC Data Source でElasticsearch に接続
- Elasticsearch データへの連携を作成します。CloverETL の新しいgraph で、Outline ペインのConnections ノードを右クリックして、Create Connection をクリックします。Database Connection ウィザードが表示されます。
- +アイコンをクリックして、.jar ファイルをロードします。インストールディレクトリのlib フォルダの cdata.jdbc.elasticsearch.jar ファイルを選択します。
- JDBC URL を入力します。一般的な接続文字列は:
jdbc:elasticsearch:Server=127.0.0.1;Port=9200;User=admin;Password=123456;
接続するには、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 では、設定したリルムをベースにユーザー認証およびロールの許可が実施されます。

DBInputTable コンポーネントで、Elasticsearch データをクエリ
- DBInputTable をReaders セクションからドラッグし、ジョブフローに置きます。ダブルクリックして、設定エディタを開きます。
- DB コネクションプロパティで、Elasticsearch JDBC をドロップダウンから選択します。
- SQL クエリを入力します。例:
SELECT * FROM Orders
UniversalDataWriter でQuery のOutput を記述
- Writer セクションからUniversalDataWriter をドラッグして、ジョブフローに置きます。
- UniversalDataWriter をダブルクリックして、設定エディタを開き、ファイルURL を足します。
- DBInputTable をダブルクリックして、Extract Metadata をクリックします。
- DBInputTable のOutput ポートをUniversalDataWriter に接続します。
- UniversalDataWriter のSelect Metadata メニューでOrders テーブルを選択します。(UniversalDataWriter のInput ポートを右クリックしてメニューを開くことも可能です。)
- Run をクリックして、ファイルの書き込みを実行します。
