Elasticsearch: Adicione uma maneira de determinar a posição de um resultado em um conjunto ou a presença de resultados para frente/para trás

Criado em 28 dez. 2016  ·  3Comentários  ·  Fonte: elastic/elasticsearch


Descreva o recurso :
O novo parâmetro search_after é incrível para paginar grandes conjuntos de resultados! Estou tentando conectar o ElasticSearch a uma API do GraphQL usando a especificação de conexão Relay e estou enfrentando um problema em que não consigo determinar se há resultados adicionais antes ou depois do conjunto atual. Posso contornar isso no momento recuperando mais um resultado do que preciso no back-end do conjunto e, em seguida, executando outra consulta para um único resultado antes do conjunto (invertendo a ordem). Isso parece desajeitado embora. É possível obter uma maneira de determinar a presença de registros para frente e para trás ou para determinar a posição do conjunto atual no resultado geral? Eu posso ver isso sendo um requisito para muitos casos de uso.

:SearcSearch >feature discuss

Comentários muito úteis

Dada a maneira como as coisas são implementadas, poderíamos teoricamente contar quantos documentos ignoramos devido ao fato de que comparam menos que os valores de classificação fornecidos em search_after . No entanto, isso significa atualizar as respostas para a API de pesquisa para incluir essas informações, modificar os coletores Lucene para expor esse deslocamento e, de maneira mais geral, propagar essas informações do coletor até a resposta da pesquisa, de modo que não seria uma alteração trivial. Sugiro que mantenhamos esse assunto em aberto por algum tempo para avaliar o interesse que ele desperta.

Todos 3 comentários

Dada a maneira como as coisas são implementadas, poderíamos teoricamente contar quantos documentos ignoramos devido ao fato de que comparam menos que os valores de classificação fornecidos em search_after . No entanto, isso significa atualizar as respostas para a API de pesquisa para incluir essas informações, modificar os coletores Lucene para expor esse deslocamento e, de maneira mais geral, propagar essas informações do coletor até a resposta da pesquisa, de modo que não seria uma alteração trivial. Sugiro que mantenhamos esse assunto em aberto por algum tempo para avaliar o interesse que ele desperta.

cc @elastic/es-search-aggs

Como não vimos muito interesse neste problema, e porque exigirá muitas modificações, e há uma solução alternativa para o tamanho do cliente, estou encerrando este problema.

Esta página foi útil?
0 / 5 - 0 avaliações