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