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