13

i know there is support for bulk index operation. but is it possible to do the same for search queries? i want to send many different unrelated queries (to do precision/recall testing) and it would probably be faster using bulk query

piotrek
  • 12,111
  • 8
  • 63
  • 144

1 Answers1

16

Yes, you can use the multi search API and the /_msearch endpoint to send as many queries as you wish in one shot.

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

You'll get a responses array with the response of each query in the same order as in the request.

Note:

  1. make sure to separate each line by a newline character
  2. make sure to add the extra newline after the last query.
Val
  • 165,097
  • 10
  • 260
  • 279