14

我知道支持批量索引操作。但是否可以对搜索查询做同样的事情?我想发送许多不同的不相关查询(进行精度/召回测试),使用批量查询可能会更快

4

1 回答 1

17

是的,您可以使用多搜索 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. 确保在最后一个查询之后添加额外的换行符。
于 2016-01-20T12:53:33.690 回答