JsonQueryElasticsearch 2025.5.31.15

Pacote

org.apache.nifi | nifi-elasticsearch-restapi-nar

Descrição

Um processador que permite ao usuário executar uma consulta (com agregações) escrita com o Elasticsearch JSON DSL. Ele não pagina automaticamente as consultas para o usuário. Se uma relação de entrada for adicionada a esse processador, ele usará o conteúdo do FlowFile para a consulta. Deve-se tomar cuidado com o tamanho da consulta porque toda a resposta do Elasticsearch será carregada na memória de uma só vez e convertida nos FlowFiles resultantes.

Tags

elasticsearch, elasticsearch5, elasticsearch6, elasticsearch7, elasticsearch8, get, json, query, read

Requisito de entrada

ALLOWED

Oferece suporte a propriedades dinâmicas confidenciais

falso

Propriedades

Propriedade

Descrição

Comprimento máximo da cadeia de caracteres do campo JSON

O comprimento máximo permitido de um valor de cadeia de caracteres ao analisar um documento ou atributo JSON.

el-query-attribute

Se definido, a consulta executada será definida em cada FlowFile de resultado no atributo especificado.

el-rest-client-service

Um serviço de cliente do Elasticsearch a ser usado para executar consultas.

el-rest-fetch-index

O nome do índice a ser usado.

el-rest-format-aggregations

Formato da saída de agregação.

el-rest-format-hits

Formato da saída de ocorrências.

el-rest-output-no-hits

Emite um FlowFile de “ocorrências” mesmo que não sejam encontradas ocorrências para a consulta. Se for verdadeiro, será gerado um FlowFile de “ocorrências” vazio, mesmo que sejam geradas “agregações”.

el-rest-query

Uma consulta na sintaxe JSON, não na sintaxe Lucene. Ex.: {«query»:{«match»:{«somefield»:»somevalue»}}}. Se esse parâmetro não for definido, a consulta será lida a partir do conteúdo do FlowFile. Se a consulta (propriedade e conteúdo do FlowFile) estiver vazia, será usado um objeto JSON vazio padrão, o que resultará em uma consulta “match_all” no Elasticsearch.

el-rest-query-clause

Uma cláusula de “query” na sintaxe JSON, não na sintaxe Lucene. Ex.: {«match»:{«somefield»:»somevalue»}}. Se a consulta estiver vazia, será usado um objeto JSON padrão, o que resultará em uma consulta “match_all” no Elasticsearch.

el-rest-query-definition-style

Como a consulta JSON será definida para uso pelo processador.

el-rest-split-up-aggregations

Emite um FlowFile contendo todas as agregações ou um FlowFile para cada agregação individual.

el-rest-split-up-hits

Emite um FlowFile contendo todas as ocorrências ou um FlowFile para cada ocorrência individual.

el-rest-type

O tipo desse documento (usado pelo Elasticsearch para indexação e pesquisa).

es-rest-query-aggs

Uma ou mais agregações de consulta (ou “aggs”), na sintaxe JSON. Ex.: {«items»: {«terms»: {«field»: «product», «size»: 10}}}

es-rest-query-fields

Campos de documentos indexados a serem recuperados, na sintaxe JSON. Ex.: [«user.id», «http.response.*», {«field»: «@timestamp», «format»: «epoch_millis»}]

es-rest-query-script-fields

Campos a serem criados usando a avaliação de script no tempo de execução da consulta, na sintaxe JSON. Ex.: {«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

Classifique os resultados por um ou mais campos, na sintaxe JSON. Ex.: [{«price» : {«order» : «asc», «mode» : «avg»}}, {«post_date» : {«format»: «strict_date_optional_time_nanos»}}]

es-rest-size

O número máximo de documentos a serem recuperados na consulta. Se a consulta for paginada, esse “tamanho” se aplicará a cada página da consulta, e não ao “tamanho” de todo o conjunto de resultados.

Relações

Nome

Descrição

aggregations

As agregações são roteadas para essa relação.

failure

Todos os FlowFiles que falham por motivos não relacionados à disponibilidade do servidor vão para essa relação.

hits

Os resultados da pesquisa são encaminhados para essa relação.

original

Todos os FlowFiles originais que não causam um erro vão para essa relação.

Grava atributos

Nome

Descrição

mime.type

applicativo/json

aggregation.name

O nome da agregação cujos resultados estão no FlowFile de saída

aggregation.number

O número da agregação cujos resultados estão no FlowFile de saída

hit.count

O número de ocorrências que estão no FlowFile de saída

elasticsearch.query.error

A mensagem de erro fornecida pelo Elasticsearch se houver um erro ao consultar o índice.

Consulte também