PaginatedJsonQueryElasticsearch 2025.10.9.21

Pacote

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

Descrição

Um processador que permite ao usuário executar uma consulta paginada (com agregações) escrita com o Elasticsearch JSON DSL. Ele usará o conteúdo do FlowFile para a consulta, a menos que o atributo QUERY seja preenchido. As consultas Search After/Point in Time devem incluir um campo “sort” válido.

Tags

elasticsearch, elasticsearch7, elasticsearch8, elasticsearch9, json, página, consulta, leitura, rolagem

Requisito de entrada

REQUIRED

Oferece suporte a propriedades dinâmicas confidenciais

falso

Propriedades

Propriedade

Descrição

Aggregation Results Format

Formato da saída de agregação.

Aggregation Results Split

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

Aggregations

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

Client Service

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

Campos

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

Índice

O nome do índice a ser usado.

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.

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”.

Pagination Keep Alive

Período de paginação “keep_alive”. Período durante o qual o Elasticsearch manterá o cursor de scroll/pit ativo entre as solicitações (esse não é o tempo esperado para que todas as páginas sejam retornadas, mas o tempo máximo permitido para solicitações entre recuperações de páginas).

Pagination Type

Método de paginação a ser usado. Nem todos os tipos estão disponíveis para todas as versões do Elasticsearch. Consulte a documentação do Elasticsearch para confirmar quais são aplicáveis e recomendados para seu serviço.

Consulta

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.

Query Attribute

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

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.

Query Definition Style

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

Script Fields

Campos a serem criados usando 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}}}}

Formato dos resultados da pesquisa

Formato da saída de ocorrências.

Divisão dos resultados da pesquisa

Emite um FlowFile contendo todos as ocorrências ou um FlowFile para cada ocorrência individual ou um FlowFile contendo todos as ocorrências de todas as respostas paginadas.

Tamanho

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.

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»}}]

Type

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

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

page.number

O número da página (solicitação), a partir de 1, na qual foram retornados os resultados que 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