JsonQueryElasticsearch 2025.5.31.15¶
バンドル¶
org.apache.nifi | nifi-elasticsearch-restapi-nar
説明¶
Elasticsearch JSON DSL で記述されたクエリ(集約を含む)をユーザーに実行させるプロセッサーです。ユーザーのためにクエリを自動的にページ分割することはありません。このプロセッサーに受信リレーションシップが追加されると、フローファイルのコンテンツがクエリに使用されます。Elasticsearchからのレスポンス全体が一度にメモリにロードされ、結果のフローファイルに変換されるため、クエリのサイズには注意が必要です。
入力要件¶
ALLOWED
機密動的プロパティをサポート¶
false
プロパティ¶
プロパティ |
説明 |
---|---|
最大 JSON フィールド文字列長 |
JSON ドキュメントまたは属性をパースするときに許容される文字列値の最大長。 |
el-query-attribute |
セットされた場合、実行クエリは指定された属性内の各結果フローファイルにセットされます。 |
el-rest-client-service |
クエリの実行に使用する Elasticsearch クライアントサービスです。 |
el-rest-fetch-index |
使用するインデックスの名前。 |
el-rest-format-aggregations |
アグリゲーション出力の形式。 |
el-rest-format-hits |
ヒット出力の形式。 |
el-rest-output-no-hits |
クエリにヒットしなかった場合でも、"hits "フローファイルを出力します。trueの場合、"aggregations "が出力されても、空の "hits "フローファイルが出力されます。 |
el-rest-query |
Lucene 構文ではなく JSON 構文のクエリ。例: {"query":{"match":{"somefield":"somevalue"}}}。このパラメーターがセットされていない場合、クエリはフローファイルのコンテンツから読み込まれます。クエリ(プロパティとフローファイルの内容)が空の場合、デフォルトの空の JSON オブジェクトが使用され、Elasticsearch では「match_all」クエリ結果となります。 |
el-rest-query-clause |
Lucene 構文ではなく、 JSON 構文の "クエリ" 句。例: {"match":{"somefield":"somevalue"}}。クエリが空の場合、デフォルトの JSON オブジェクトが使用され、Elasticsearch では "match_all" クエリ結果となります。 |
el-rest-query-definition-style |
JSON クエリがプロセッサーで使用されるための定義方法。 |
el-rest-split-up-aggregations |
すべてのアグリゲーションを含むフローファイル、または個々のアグリゲーションごとに1つのフローファイルを出力します。 |
el-rest-split-up-hits |
すべてのヒットを含むフローファイル、または個々のヒットごとに1つのフローファイルを出力します。 |
el-rest-type |
このドキュメントのタイプ (Elasticsearch がインデックス作成と検索に使用します)。 |
es-rest-query-aggs |
JSON 構文で、1 つ以上のクエリ集約(または "aggs")。例: {"items": {"terms": {"field": "product", "size": 10}}} |
es-rest-query-fields |
JSON 構文で、検索するインデックスドキュメントのフィールド。例: ["user.id", "http.response.*", {"field": "@timestamp", "format": "epoch_millis"}]。 |
es-rest-query-script-fields |
JSON 構文で、クエリのランタイムにスクリプト評価を使用して作成するフィールド。例: {"test1": {"script": {"lang": "painless", "source": "doc['price'].value * 2"}}, "test2": {"script": {"lang": "painless", "source": "doc['price'].value * params.factor", "params": {"factor": 2.0}}}} |
es-rest-query-sort |
JSON 構文で、1 つ以上のフィールドで結果を並べ替えます。例: [{"price" : {"order" : "asc", "mode" : "avg"}}, {"post_date" : {"format": "strict_date_optional_time_nanos"}}] |
es-rest-size |
クエリで検索するドキュメントの最大数。クエリがページ分割されている場合、この「サイズ」は結果セット全体の「サイズ」ではなく、クエリの各ページに適用されます。 |
リレーションシップ¶
名前 |
説明 |
---|---|
aggregations |
アグリゲーションはこのリレーションシップにルーティングされます。 |
failure |
サーバーの可用性とは無関係な理由で失敗したすべてのフローファイルは、この関係に移動します。 |
hits |
検索ヒットはこのリレーションにルーティングされます。 |
original |
エラーが発生しないすべてのオリジナル・フローファイルは、このリレーションシップに移動します。 |
属性の書き込み¶
名前 |
説明 |
---|---|
mime.type |
application/json |
aggregation.name |
出力フローファイルに結果が含まれる集計の名前 |
aggregation.number |
出力フローファイルに結果が含まれる集計の番号 |
ヒット.数 |
出力フローファイル内のヒット数 |
elasticsearch.クエリ.エラー |
インデックスのクエリにエラーが発生した場合に Elasticsearch が提供するエラーメッセージ。 |