Anmerkung: Die Antwort bezieht sich auf eine ältere Version von Elasticsearch 0.90
. Seither erschienene Versionen haben eine aktualisierte Syntax. Bitte beachten Sie die anderen Antworten, die möglicherweise eine genauere Antwort auf die von Ihnen gesuchte aktuelle Antwort geben.
Die nachstehende Abfrage würde die NO_OF_RESULTS zurückgeben, die Sie zurückgeben möchten.
curl -XGET 'localhost:9200/foo/_search?size=NO_OF_RESULTS' -d '
{
"query" : {
"match_all" : {}
}
}'
Die Frage, die sich hier stellt, ist, ob Sie alle die zurückzusendenden Datensätze. Bevor Sie also eine Abfrage schreiben, werden Sie natürlich nicht den Wert von NO_OF_RESULTS .
Woher wissen wir, wie viele Datensätze in Ihrem Dokument vorhanden sind? Geben Sie einfach die folgende Abfrage ein
curl -XGET 'localhost:9200/foo/_search' -d '
Dies würde zu einem Ergebnis führen, das wie das folgende aussieht
{
hits" : {
"total" : 2357,
"hits" : [
{
..................
Das Ergebnis insgesamt sagt Ihnen, wie viele Datensätze in Ihrem Dokument vorhanden sind. Das ist also eine gute Möglichkeit, den Wert von NO_OF ERGEBNISSE
curl -XGET 'localhost:9200/_search' -d '
Suche nach allen Typen in allen Indizes
curl -XGET 'localhost:9200/foo/_search' -d '
Alle Typen im Index foo suchen
curl -XGET 'localhost:9200/foo1,foo2/_search' -d '
Suche nach allen Typen in den Indizes foo1 und foo2
curl -XGET 'localhost:9200/f*/_search
Suche nach allen Typen in allen Indizes, die mit f beginnen
curl -XGET 'localhost:9200/_all/type1,type2/_search' -d '
Sucharten Benutzer und Tweet in allen Indizes