SearchElasticsearch 2025.5.31.15

Pacote

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

Descrição

Um processador que permite ao usuário executar repetidamente uma consulta paginada (com agregações) escrita com o Elasticsearch JSON DSL. As consultas Search After/Point in Time devem incluir um campo “sort” válido. O processador recuperará várias páginas de resultados até que não haja mais resultados disponíveis ou a expiração de Pagination Keep Alive (Manutenção da paginação) seja atingida, após o que a consulta será reiniciada com a primeira página de resultados sendo recuperada.

Tags

elasticsearch, elasticsearch5, elasticsearch6, elasticsearch7, elasticsearch8, json, page, query, scroll, search

Requisito de entrada

FORBIDDEN

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

el-rest-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.

el-rest-query

Uma consulta na sintaxe JSON, não na sintaxe Lucene. Ex.: {«query»:{«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-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 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.

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.

restart-on-finish

Se o processador deve iniciar outra pesquisa com a mesma consulta após a conclusão de uma pesquisa paginada.

Gerenciamento do estado

Escopos

Descrição

LOCAL

O estado de paginação (scrollId, searchAfter, pitId, hitCount, pageCount, pageExpirationTimestamp) é mantido entre as invocações desse processador até que Scroll/PiT tenha expirado (quando a hora atual for posterior à última execução da consulta mais o intervalo de Pagination Keep Alive).

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.

retry

Todos os FlowFiles que falham devido à disponibilidade do servidor/cluster 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