2017-01-23 32 views
5

Mam problem, w którym chcę zmniejszyć liczbę wyników wyszukiwania elastycznego do 1000, niezależnie od liczby pasujących wyników, które pasują do siebie, ale nie powinno to wpłynąć na ranking i punktację .Ogranicza liczbę wyników zwracanych przez Elastic Search

Próbowałem terminate_after, ale wydaje mi się, że wystarczy po prostu wyszukać elastyczne wyniki, nie biorąc pod uwagę wyników. Popraw mnie, jeśli się mylę.

Każda pomoc w tej sprawie?

EDIT:

jestem już przy użyciu paginacji. Tak więc użycie opcji Rozmiar w From/Size wpłynie tylko na rozmiar bieżącej strony. Ale chcę ograniczyć rozmiar wszystkich wyników do 1000, a następnie stronicowanie na tym.

Odpowiedz

1

Jak na temat korzystania From/Size aby powrócić numer wymóg wyników:

GET /_search 
{ 
    "from" : 0, "size" : 1000, 
    "query" : { 
     //your query 
    } 
} 
+0

Proszę sprawdzić ** EDYCJA ** w pytaniu. – RohitWagh

0

Próbowałeś z

terminate_after 

Maksymalna ilość dokumentów, aby zebrać na każdym fragmencie, po osiągnięciu którego wykonywanie zapytań zakończy się wcześniej. Jeśli zostanie ustawione, odpowiedź będzie miała pole logiczne zakończone _początkiem, aby wskazać, czy wykonanie zapytania zostało faktycznie zakończone. Domyślnie nie ma wartości terminat_after.

+0

tak, jak już wspomniałem w pytaniu, próbowałem już 'terminate_after'. – RohitWagh

+0

@RohitWagh Próbowałem również tego, ale pomieszało sortowanie. Moim rozwiązaniem było posortowanie bazy wynikowej na dacie utworzenia i ograniczenie ostatnich 60 dni. – kozla13