615 Stimmen

Elasticsearch-Abfrage zur Rückgabe aller Datensätze

Ich habe eine kleine Datenbank in Elasticsearch und möchte zu Testzwecken alle Datensätze zurückholen. Ich versuche, eine URL in der Form...

http://localhost:9200/foo/_search?pretty=true&q={'matchAll':{''}}

Kann mir jemand die URL nennen, mit der Sie dies erreichen würden?

6voto

Daniel Punkte 7078

Sie können die _count API, um den Wert für die size Parameter:

http://localhost:9200/foo/_count?q=<your query>

Rückgabe {count:X, ...} . Extrahieren Sie den Wert "X" und führen Sie dann die eigentliche Abfrage durch:

http://localhost:9200/foo/_search?q=<your query>&size=X

6voto

akshay misra Punkte 69

Am besten lässt sich die Größe mit size= einstellen. Nummer vor der URL

Curl -XGET "http://localhost:9200/logstash-*/_search?size=50&pretty"

Hinweis: Der maximale Wert, der in dieser Größe definiert werden kann, ist 10000. Für jeden Wert über 10.000 wird erwartet, dass Sie die Bildlauffunktion verwenden, um die Wahrscheinlichkeit von Leistungseinbußen zu minimieren.

5voto

Aminah Nuraini Punkte 15960

Einfach! Sie können verwenden size y from Parameter!

http://localhost:9200/[your index name]/_search?size=1000&from=0

dann ändern Sie die from schrittweise, bis Sie alle Daten haben.

5voto

belostoky Punkte 924

Von Kibana DevTools sein:

GET my_index_name/_search
{
  "query": {
    "match_all": {}
  }
}

4voto

Edwin O. Punkte 4356

http://localhost:9200/foo/_search/ ? Größe \=1000&pretty=1

Sie müssen den Abfrageparameter size angeben, da der Standardwert 10 ist.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X