2016-04-22 17 views
2

Ich habe einen Anwendungsfall, wo es zwei verschiedene Arten im gleichen Index gibt. Beide Typen haben unterschiedliche Struktur und Zuordnung.Mehrere Arten in Elasticsearch suchen

Ich muss beide Arten gleichzeitig mit verschiedenen Abfrage DSL abfragen.

Wie kann ich meine Abfrage DSL erstellen, um mehrere Typen desselben Index gleichzeitig abzufragen.

Ich schaute in elasticsearch guide um https://www.elastic.co/guide/en/elasticsearch/guide/current/multi-index-multi-type.html, aber es gibt keine richtige Erklärung hier. Dementsprechend auch wenn ich zwei verschiedene Typen in meine Anfrage einstelle:

Ich werde die gleiche Abfrage DSL senden müssen.

Antwort

4

Sie müssen multi-search API verwenden und die _msearch Endpunkt

curl -XGET localhost:9200/index/_msearch -d ' 
{"type": "type1"} 
{"query" : {"match_all" : {}}, "from" : 0, "size" : 10} 
{"type": "type2"} 
{"query" : {"match_all" : {}}, "from" : 0, "size" : 10} 
' 

Hinweis: stellen Sie sicher, jede Zeile durch Zeilenumbrüche voneinander zu trennen (einschließlich der letzten Zeile)

Sie werden zwei Antworten in der gleichen Reihenfolge erhalten als die Anfragen

Verwandte Themen