ConsumeElasticsearch 2025.10.9.21

Pacote

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

Descrição

Um processador que executa repetidamente uma consulta paginada em um campo usando uma consulta Range para consumir novos documentos de um índice/consulta do Elasticsearch. O processador recuperará várias páginas de resultados até que não haja mais resultados disponíveis ou até que o prazo de validade de Pagination Keep Alive (Manutenção da paginação) seja atingido, após o que a consulta Range atualizará automaticamente a restrição de campo com base no último valor de documento recuperado.

Tags

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

Requisito de entrada

FORBIDDEN

Oferece suporte a propriedades dinâmicas confidenciais

falso

Propriedades

Propriedade

Descrição

Additional Filters

Um ou mais filtros de consulta na sintaxe JSON, não na sintaxe Lucene. Ex.: [{«match»:{«somefield»:»somevalue»}}, {«match»:{«anotherfield»:»anothervalue»}}]. Esses filtros serão usados como parte de um filtro de consulta booliano.

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.

Initial Value

O valor inicial a ser usado para a consulta se o processador não tiver sido executado anteriormente. Se o processador tiver sido executado anteriormente e armazenado um valor em seu estado, essa propriedade será ignorada. Se nenhum valor for fornecido e o processador não tiver sido executado anteriormente, nenhum limite de consulta de intervalo será usado, ou seja, todos os documentos serão recuperados na “Ordem de classificação” especificada.

Formato da data do valor inicial

Se o “Campo de consulta Range” for um campo de data, converta o “Valor inicial” em uma data com esse formato. Se não for especificado, o Elasticsearch usará o formato de data fornecido pelo mapeamento do “Campo de consulta Range”. Para obter a sintaxe válida, consulte https://www.elastic.co/guide/pt/elasticsearch/reference/current/mapping-date-format.html

Fuso horário da data do valor inicial

Se o “Campo de consulta Range” for um campo de data, converta o “Valor inicial” para UTC com esse fuso horário. Os valores válidos são deslocamentos ISO 8601 UTC, como “+01:00” ou “-08:00”, e IDs de fuso horário IANA, como “Europa/Londres”.

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.

Query Attribute

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

Campo de consulta de intervalo

Campo a ser rastreado como parte de uma consulta Range do Elasticsearch usando uma correspondência vinculada “gt”. Esse campo deve existir no documento do Elasticsearch para que possa ser recuperado.

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

Sort Order

A ordem em que o “Campo de consulta Range” deve ser classificada. Uma cláusula de ordenação para o campo “Campo de consulta Range” será anexada a qualquer cláusula de ordenação fornecida. Se já existir uma cláusula de ordenação para o “Campo de consulta Range”, ela não será atualizada.

Type

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

Gerenciamento do estado

Escopos

Descrição

CLUSTER

O estado de paginação (scrollId, searchAfter, pitId, hitCount, pageCount, pageExpirationTimestamp, trackingRangeValue) é 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

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