Próbuję filtrować pole _id (indeks nie włączony) w elastycznym przeszukiwaniu według zakresu. Czy to możliwe? Jeśli tak, jak można to zrobić? Czytałem w dokumentacji elasticsearch, że możemy użyć "ids" do zapytania przez _id i type, ale nie widzę, jak można to zrobić za pomocą filtru zakresu. (Nie chcę włączać indeksu na _id).Filtr _id range in elasticsearch
{
"from": 0,
"size": 20,
"query": {
"match_all": {}
},
"filter": {
"range": {
"_id": {
"gt": "51f7b6b7710c42b136027581"
}
}
},
"sort": {
"pubdate": {
"order": "desc"
}
}
}
myślę, że nie można zrobić. Mam przeczucie, że '_id' jest zahartowany dla szybkiego wyszukiwania, gdy raz coś zhanglujesz, tracisz poczucie jego" wartości ". Musisz zapisać identyfikator w dokumencie. – ramseykhalaf
Czy jesteś pewien co do ramsey przechowywania? Musisz indeksować identyfikator (co nie jest przypadkiem domyślnie), ponieważ zapytanie zakresu dopasowuje dokumenty do pól, które mają terminy w zdefiniowanym zakresie. – ThomasC
Czy możesz zindeksować dokumenty o określonej (całkowitej) liczbie _id zamiast domyślnej opcji _id dostarczonej przez elastyczne? –