Jak uzyskać listę wszystkich pól, które są obecne w indeksie (tj. Pola występujące w indeksowanych dokumentach, a nie tylko w odwzorowaniu)?Lista wszystkich pól w indeksie elasticsearch?
Odpowiedz
Począwszy 1.3 masz pole meta _field_names.
{
"aggs": {
"Field names": {
"terms": {
"field": "_field_names",
"size": 10
}
}
}
}
Objaśnienie:
Nie sądzę, że istnieje jakiś sposób, aby dokładnie to zrobić. Ale ponieważ wszystko w indeksie jest automatycznie wrzucane do mapowania, wiemy, że mapowanie zawiera co najmniej każde pole w indeksie. Stamtąd możesz przechodzić przez kolejne pola w mapowaniu i uruchamiać liczbę wyników w indeksie, które mają to pole. Jeśli liczba jest większa niż 0, to pole istnieje; jeśli liczba wynosi 0, to pole nie jest częścią indeksu. Ponieważ wiemy, że każde pole w indeksie będzie istniało w twoim mapowaniu, powinno to obejmować wszystkie możliwości.
Niektóre zaproszenia przykład API:
# Get the mapping
$ curl -XGET 'http://localhost:9200/index/type/_mapping?pretty'
# Count a field
$ curl -XGET 'http://localhost:9200/index/type/_count' -d '
{
"query" : {
"constant_score" : {
"filter" : {
"exists" : { "field" : "name_from_mapping" }
}
}
}
}'
Dokumentacja:
Proszę zauważyć, że moja odpowiedź będzie wymagała podania kodu (lub wykonania pracy ręcznej) w celu rzeczywistego określenia, które pola istnieją w twoim indeksie. To jest bardziej teoria/wyjaśnienie/zasób, aby zacząć. – Sam
mógłbym rozważyć stworzenie „elasticsearch-index-fieldlist” wtyczki, podobny do https://github.com/jprante/elasticsearch-index-termlist, jeśli naprawdę nie ma bezpośredni sposób, aby dostać się na liście pól obecnych w indeksie ...
W obecnej wersji (5.2), można użyć API mapowania, aby wszystkie nazwy pól:
GET index_name/_mapping?pretty
zajrzyj do official document aby uzyskać więcej informacji.
- 1. Zapętlenie wszystkich dokumentów w indeksie elasticsearch
- 2. Określanie pól indeksowanych w ElasticSearch
- 3. lista pól obiektu zręcznościowego
- 4. elasticsearch pasują do dwóch pól
- 5. ElasticSearch: Wyszukiwanie pól w zagnieżdżonych tablicach
- 6. Powielanie dokumentów w indeksie Elasticsearch z tym samym _uid
- 7. Jak zdefiniować nazwy pól indeksowych ElasticSearch dla POJO przy użyciu danych sprężystych ElasticSearch
- 8. Lista wszystkich folderów w katalogu
- 9. Lista pól z funktorami trawiennymi
- 10. Psql lista wszystkich tabel
- 11. AppleScript - Lista wszystkich czcionek
- 12. Lista wszystkich diagnostyków gcc
- 13. Lista wszystkich krajów rozwijanej
- 14. Jak uzyskać element w określonym indeksie z C++ Lista
- 15. ReignFirstResponder dla wszystkich pól tekstowych
- 16. zaznaczenie wszystkich pól wyboru jquery
- 17. Otrzymaj wartości wszystkich pól wyboru w repeateru
- 18. Sprawdzanie poprawności wszystkich pól w GUI Swing
- 19. ASP.NET MVC4 Lista wszystkich obszarów
- 20. Lista wszystkich rekursywnie svn: externals?
- 21. lista wszystkich poziomach Czynnikiem data.frame
- 22. AppleScript - lista wszystkich uruchomionych aplikacji
- 23. Lista wszystkich możliwych wyjątków SoapServer
- 24. Lista wszystkich typów sqibase sql
- 25. Lista wszystkich klas BEZ Javadocs
- 26. Lista wszystkich folderów i podfolderów
- 27. Główna lista wszystkich wydarzeń Tkinter?
- 28. Lista wszystkich informacji o sesji
- 29. Lista wszystkich nieskończonych buildów w Jenkins?
- 30. Lista wszystkich zdjęć z aparatu w Androidzie
nie działa już z 5.x Zobacz: https://github.com/elastic/elasticsearch/issues/22576 – naoko