Pentaho Report Designer でElasticsearch のデータを連携利用

Jerod Johnson
Jerod Johnson
Senior Technology Evangelist
Pentaho BI ツールでElasticsearch のデータをもとにしたレポートを公開。

CData JDBC Driver for Elasticsearch のデータ を使えば、ダッシュボードやレポートからリアルタイムデータにアクセスできます。この記事では、Elasticsearch のデータにJDBC データソースとして接続し、Pentaho でElasticsearch のデータをもとにしたレポートを公開する方法を説明します。

Elasticsearch データ連携について

CData を使用すれば、Elasticsearch のライブデータへのアクセスと統合がこれまでになく簡単になります。お客様は CData の接続機能を以下の目的で利用しています:

  • SQL エンドポイントと REST エンドポイントの両方にアクセスでき、接続を最適化し、Elasticsearch データの読み書きに関してより多くのオプションを提供します。
  • v2.2 以降およびオープンソース Elasticsearch サブスクリプションを含む、ほぼすべての Elasticsearch インスタンスに接続できます。
  • SCORE() 関数を明示的に要求することなく、常にクエリ結果の関連性スコアを受け取ることができます。これにより、サードパーティツールからのアクセスが簡素化され、クエリ結果のテキスト関連性のランキングを簡単に確認できます。
  • 複数のインデックスを検索でき、クライアントマシンではなく Elasticsearch がクエリと結果の管理・処理を担当します。

ユーザーは、Crystal Reports、Power BI、Excel などの分析ツールと Elasticsearch データを統合し、当社のツールを活用して、Elasticsearch を含むすべてのデータソースへの単一のフェデレートアクセスレイヤーを実現しています。

CData の Elasticsearch ソリューションの詳細については、ナレッジベース記事をご覧ください:CData Elasticsearch Driver Features & Differentiators


はじめに


接続してレポートを作成

  1. インストールディレクトリのlib サブフォルダ内にあるドライバーのJAR ファイルを、Pentaho ディレクトリ内の\Report-Designer\lib\jdbc\ フォルダにコピーします。
  2. \Report-Designer\ フォルダ内のreport-designer.bat ファイルを実行してReport-Designer UI を開きます。
  3. Data -> Add Data Source -> Advanced -> JDBC(Custom)をクリックし、新しいElasticsearch 接続を作成して、ドライバーで新しいデータソースを作成します。 表示されるダイアログで、以下のように接続プロパティを設定します。

    • Custom Connection URL property:JDBC URL を入力します。JDBC URL はjdbc:elasticsearch: で始まり、その後にセミコロン区切りで接続プロパティを指定します。

      Elasticsearch 接続プロパティの取得・設定方法

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

      CData 製品は、認証と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
      

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

      JDBC URL を設定する際、Max Rows 接続プロパティの設定も検討してください。これにより返される行数が制限されます。特にレポートやビジュアライゼーションを設計する際のパフォーマンス向上に役立ちます。

      一般的なJDBC URL は次のとおりです:

      jdbc:elasticsearch:Server=127.0.0.1;Port=9200;User=admin;Password=123456;
    • Custom Driver Class Name:cdata.jdbc.elasticsearch.ElasticsearchDriver を入力します。
    • User Name:認証に使用するユーザー名。
    • Password:認証に使用するパスワード。

レポートにElasticsearch のデータを追加

Elasticsearch のデータをもとにレポートを作成する準備が整いました。

  1. レポートにElasticsearch のソースを追加します。Data -> Add Data Source -> JDBC をクリックしてデータソースを選択します。

  2. クエリを設定します。この記事では以下のクエリを使用します:

    SELECT Orders.Freight, Customers.ContactName FROM Customers INNER JOIN Orders ON Customers.CustomerId=Orders.CustomerId
  3. レポートにチャートをドラッグし、ダブルクリックしてチャートを編集します。レポートを実行してチャートを表示します。このクエリの結果を使用して、Orders テーブルのシンプルなチャートを作成できます。
  4. 最後に、レポートを実行してチャートを確認します。

はじめる準備はできましたか?

Elasticsearch Driver の無料トライアルをダウンロードしてお試しください:

 ダウンロード

詳細:

Elasticsearch Icon Elasticsearch JDBC Driver お問い合わせ

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