Apache Spark StreamingのtElasticSearchConfigurationプロパティ - 7.2

ElasticSearch

Version
7.2
Language
日本語 (日本)
Product
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Real-Time Big Data Platform
Module
Talend Studio
Content
ジョブデザインと開発 > サードパーティーシステム > ElasticSearchコンポーネント
データガバナンス > サードパーティーシステム > ElasticSearchコンポーネント
データクオリティとプレパレーション > サードパーティーシステム > ElasticSearchコンポーネント

これらのプロパティを使って、Spark Streamingジョブフレームワーク内で実行されているtElasticSearchConfigurationを設定します。

Spark Streaming tElasticSearchConfigurationコンポーネントはElasticSearchファミリーのコンポーネントです。

このコンポーネントは、Talend Real Time Big Data PlatformおよびTalend Data Fabricで使用できます。

基本設定

[Nodes] (ノード)

使用するElasticSearchシステムをホストしているクラスターのロケーションを入力します。

[Nodes] (ノード)パラメーターは必須で、ElasticSearchに接続するElasticSearchコンポーネントがElasticSearchノードクライアントを使う場合にのみ最終的に考慮に入れられます。すなわち、tElasticSearchInputコンポーネントとtElasticSearchOutputコンポーネントです。

ElasticSearchノードクライアントとElasticSearchトランスポートクライアントについては、「https://www.elastic.co/guide/en/elasticsearch/guide/current/_transport_client_versus_node_client.html」を参照してください。

[Transport addresses] (住所の転送)

コンポーネントを接続する必要のあるElasticSearchノードのアドレスを入力します。

このパラメーターは、ElasticSearchジョブ(正確にはジョブ内のtElasticSearchLookupInput)が、使用するElasticSearchクラスターに接続するためにElasticSearchトランスポートクライアントを使う際に必要です。ElasticSearchトランスポートクライアントを使わない場合は、このフィールドの空の二重引用符("")をそのままにしておきます。

ElasticSearchノードクライアントとElasticSearchトランスポートクライアントについては、「https://www.elastic.co/guide/en/elasticsearch/guide/current/_transport_client_versus_node_client.html」を参照してください。

[Cluster name] (クラスター名)

使用するElasticSearchクラスターの名前を入力します。

このパラメーターは、ElasticSearchジョブ(正確にはジョブ内のtElasticSearchLookupInput)が、使用するElasticSearchクラスターに接続するためにElasticSearchトランスポートクライアントを使う際に必要です。ElasticSearchトランスポートクライアントを使わない場合は、このフィールドの空の二重引用符("")をそのままにしておきます。

SSL/TLSの使用

SSLまたはTLS暗号化接続を有効にする場合は、このチェックボックスをオンにします。

次に、同じジョブ内のtSetKeystoreコンポーネントを使用して暗号化情報を指定する必要があります。

[User authentication] (ユーザー認証)

使用するElasticSearchシステムで認証情報が必要な場合は、このチェックボックスをオンにして、認証情報を入力します。

パスワードを入力するには、パスワードフィールドの横にある[...]ボタンをクリックし、ポップアップダイアログボックスにパスワードを二重引用符の間に入力し、[OK] をクリックして設定を保存します。

設定

アクションをさらにカスタマイズするには、Elasticsearchで受け入れられているパラメーターを追加します。

たとえば、es.mapping.id[Key] (キー)カラムに、true[Value] (値)カラムに入力して、ドキュメントのフィールド/プロパティ名がドキュメントIDを含むようにします。入力する情報は二重引用符で囲む必要があります。

使えるパラメーターのリストは、https://www.elastic.co/guide/en/elasticsearch/hadoop/master/configuration.htmlを参照してください。

詳細設定

[Connection pool] (接続プール)

このエリアでは、各Sparkエグゼキューターに、同時に開いたままにする接続の数を制御するための接続プールを設定します。以下の接続プールパラメーターに与えられているデフォルト値は、ほとんどのユースケースでそのまま使用できます。

  • [Max total number of connections] (接続の最大合計数): 同時に開いたままにしておくことができる接続(アイドルまたはアクティブ)の最大数を入力します。

    デフォルトの数は8です。-1を入力すると、同時に開いておける接続の数が無制限となります。

  • [Max waiting time (ms)] (最大待機時間(ミリ秒)): 接続使用の要求に対して接続プールからレスポンスが返されるまでの最大待機時間を入力します。デフォルトでは-1(無制限)となっています。

  • [Min number of idle connections] (アイドル接続の最小数): 接続プール内に維持されるアイドル接続(使用されていない接続)の最小数を入力します。

  • [Max number of idle connections] (アイドル接続の最大数): 接続プール内に維持されるアイドル接続(使用されていない接続)の最大数を入力します。

[Evict connections] (接続の無効化)

接続プール内の接続を破棄する条件を定義するには、このチェックボックスをオンにします。オンにすると、以下のフィールドが表示されます。

  • [Time between two eviction runs] (2つの削除実行の間隔): コンポーネントが接続のステータスを確認し、アイドル状態の接続を破棄するまでの間隔(ミリ秒)を入力します。

  • [Min idle time for a connection to be eligible to eviction] (接続が削除可能になるまでの最小アイドル時間): アイドル接続が破棄されるまでの間隔(ミリ秒)を入力します。

  • [Soft min idle time for a connection to be eligible to eviction] (接続が削除可能になるまでのソフト最小アイドル時間): このパラメーターの機能は[Min idle time for a connection to be eligible to eviction] (接続が削除可能になるまでの最小アイドル時間)と同じですが、[Min number of idle connections] (アイドル接続の最小数)フィールドで定義したアイドル接続の最小数が維持されます。

使用方法

使用ルール

このコンポーネントは、他のコンポーネントに接続せずに使用されます。

設定がランタイムにジョブ全体で使われるように、tElasticSearchConfigurationと、同じジョブで実行するElasticSearchに関わるサブジョブをドロップします。
  • Sparkジョブ用のTalendコンポーネントは、バージョン6.4.2までのElasticsearchをサポートしています。

このコンポーネントは、所属するSpark Streamingコンポーネントのパレットと共に、Spark Streamingジョブを作成している場合にだけ表示されます。

特に明記していない限り、このドキュメントのシナリオでは、[Standard] (標準)ジョブ、つまり従来の Talend データ統合ジョブだけを扱います。

[Spark Connection] (Spark接続)

[Run] (実行)ビューの[Spark Configuration] (Spark設定)タブで、ジョブ全体でのSparkクラスターへの接続を定義します。また、ジョブでは、依存jarファイルを実行することを想定しているため、Sparkがこれらのjarファイルにアクセスできるように、これらのファイルの転送先にするファイルシステム内のディレクトリーを指定する必要があります。
  • Yarnモード(YarnクライアントまたはYarnクラスター):
    • Google Dataprocを使用している場合、[Spark configuration] (Spark設定)タブの[Google Storage staging bucket] (Google Storageステージングバケット)フィールドにバケットを指定します。

    • HDInsightを使用している場合、[Spark configuration] (Spark設定)タブの[Windows Azure Storage configuration] (Windows Azure Storage設定)エリアでジョブのデプロイメントに使用するブロブを指定します。

    • Altusを使用する場合は、[Spark configuration] (Spark設定)タブでジョブのデプロイにS3バケットまたはAzure Data Lake Storageを指定します。
    • Quboleを使用する場合は、ジョブにtS3Configurationを追加し、QuboleでS3システム内に実際のビジネスデータを書き込みます。tS3Configurationを使用しないと、このビジネスデータはQubole HDFSシステムに書き込まれ、クラスターをシャットダウンすると破棄されます。
    • オンプレミスのディストリビューションを使用する場合は、クラスターで使用されているファイルシステムに対応する設定コンポーネントを使用します。一般的に、このシステムはHDFSになるため、tHDFSConfigurationを使用します。

  • [Standalone mode] (スタンドアロンモード): tHDFSConfigurationまたはtS3Configurationなど、クラスターで使用されているファイルシステムに対応する設定コンポーネントを使用します。

    ジョブ内に設定コンポーネントがない状態でDatabricksを使用している場合、ビジネスデータはDBFS (Databricks Filesystem)に直接書き込まれます。

この接続は、ジョブごとに有効になります。