Google Data Fusion で Elasticsearch に連携した ETL プロセスを作成

Jerod Johnson
Jerod Johnson
Senior Technology Evangelist
CData JDBC Driver を Google Data Fusion にロードし、Elasticsearch のデータ にリアルタイムでアクセスできる ETL プロセスを作成します。

Google Data Fusion を使用すると、セルフサービス型のデータ連携を行い、異なるデータソースを統合できます。CData JDBC Driver for Elasticsearch をアップロードすることで、Google Data Fusion のパイプライン内から Elasticsearch のデータ にリアルタイムでアクセスできるようになります。CData JDBC Driver を使用すると、Elasticsearch のデータ を Google Data Fusion でネイティブにサポートされている任意のデータソースにパイプできますが、この記事では、Elasticsearch から Google BigQuery へデータをパイプする方法を説明します。

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


はじめに


CData JDBC Driver for Elasticsearch を Google Data Fusion にアップロード

CData JDBC Driver for Elasticsearch を Google Data Fusion インスタンスにアップロードして、Elasticsearch のデータ にリアルタイムでアクセスしましょう。Google Data Fusion では JDBC ドライバーの命名規則に制限があるため、JAR ファイルを driver-version.jar という形式に合わせてコピーまたはリネームしてください。例:cdataelasticsearch-2020.jar

  1. Google Data Fusion インスタンスを開きます
  2. をクリックしてエンティティを追加し、ドライバーをアップロードします
  3. "Upload driver" タブで、リネームした JAR ファイルをドラッグまたは参照します。
  4. "Driver configuration" タブで以下を設定します:
    • Name: ドライバーの名前(cdata.jdbc.elasticsearch)を作成し、メモしておきます
    • Class name: JDBC クラス名を設定します:(cdata.jdbc.elasticsearch.ElasticsearchDriver)
  5. "Finish" をクリックします

Google Data Fusion で Elasticsearch のデータ に接続

JDBC Driver をアップロードしたら、Google Data Fusion のパイプラインで Elasticsearch のデータ にリアルタイムでアクセスできます。

  1. Pipeline Studio に移動して、新しいパイプラインを作成します
  2. "Source" オプションから "Database" をクリックして、JDBC Driver 用のソースを追加します
  3. Database ソースの "Properties" をクリックしてプロパティを編集します

    NOTE:Google Data Fusion で JDBC Driver を使用するには、ライセンス(製品版またはトライアル)とランタイムキー(RTK)が必要です。ライセンス(またはトライアル)の取得については、CData までお問い合わせください。

    • Label を設定します
    • Reference Name を将来の参照用の値に設定します(例:cdata-elasticsearch)
    • Plugin Type を "jdbc" に設定します
    • Connection String を Elasticsearch の JDBC URL に設定します。例:

      jdbc:elasticsearch:RTK=5246...;Server=127.0.0.1;Port=9200;User=admin;Password=123456;

      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
            

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

    • Import Query を Elasticsearch から取得したいデータを抽出する SQL クエリに設定します。例:
      SELECT * FROM Orders
  4. "Sink" タブから、同期先シンクを追加します(この例では Google BigQuery を使用します)
  5. BigQuery シンクの "Properties" をクリックしてプロパティを編集します
    • Label を設定します
    • Reference Name を elasticsearch-bigquery のような値に設定します
    • Project ID を特定の Google BigQuery プロジェクト ID に設定します(またはデフォルトの "auto-detect" のままにします)
    • Dataset を特定の Google BigQuery データセットに設定します
    • Table を Elasticsearch のデータ を挿入するテーブル名に設定します

Source と Sink を設定すると、Elasticsearch のデータ を Google BigQuery にパイプする準備が整います。パイプラインを保存してデプロイしてください。パイプラインを実行すると、Google Data Fusion が Elasticsearch からリアルタイムデータをリクエストし、Google BigQuery にインポートします。

これはシンプルなパイプラインの例ですが、変換、分析、条件などを使用してより複雑な Elasticsearch パイプラインを作成できます。CData JDBC Driver for Elasticsearch の 30日間の無償トライアルをダウンロードして、今すぐ Google Data Fusion で Elasticsearch のデータ をリアルタイムで活用しましょう。

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

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

 ダウンロード

詳細:

Elasticsearch Icon Elasticsearch JDBC Driver お問い合わせ

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