2016-01-20 7 views
3

Я знаю, что есть поддержка операций с массовым индексом. но можно ли сделать то же самое для поисковых запросов? я хочу отправить много разных несвязанных запросов (чтобы выполнить тестирование точности/отзыва), и, вероятно, будет быстрее использовать массовый запросElasticsearch: возможен массовый поиск?

ответ

7

Да, вы можете использовать конечную точку multi search API и /_msearch, чтобы отправить столько запросов, сколько пожелаете в одном выстрел.

curl -XPOST localhost:9200/_msearch -d ' 
{"index" : "test1"} 
{"query" : {"match_all" : {}}, "from" : 0, "size" : 10} 
{"index" : "test2"} 
{"query" : {"match_all" : {}}} 
' 

Вы получите responses массив с ответом каждого запроса в том же порядке, что и в запросе.

Примечание:

  1. убедитесь, чтобы отделить каждую строку символом новой строки
  2. убедитесь, чтобы добавить дополнительный символ новой строки после последнего запроса.