首先说明一下为什么需要批量查询操作?假设一下比如说我们没有批量查询的操作,那么当我们获取数据的时候,就是一条一条的查询。设想一下我们要获取100条数据,那么就要发送100次请求,这个开销时很大的。但是有了批量查询的话,查询100条数据,就只需要发送一次网络请求就可以了,网络请求的性能开销缩减100倍。下面是实战部分,演示一下一条一条查询与批量查询:(1)一条一条查询GET /test_index/_doc/1{ “_index” : “test_index”, “_type” : “_doc”, “_id” : “1”, “_version” : 8, “_seq_no” : 7, “_primary_term” : 1, “found” : true, “_source” : { “test_field” : “test test”, “name” : “test1” }}GET /test_index/_doc/2{ “_index” : “test_index”, “_type” : “_doc”, “_id” : “2”, “_version” : 4, “_seq_no” : 3, “_primary_term” : 1, “found” : true, “_source” : { “test_field” : “test client 1”, “name” : “test1” }}(2)mget批量查询GET /_mget{ “docs”: [ { “_index”: “test_index”, “_id”: 1 }, { “_index”: “test_index”, “_id”: 2 } ]}{ “docs” : [ { “_index” : “test_index”, “_type” : “_doc”, “_id” : “1”, “_version” : 8, “_seq_no” : 7, “_primary_term” : 1, “found” : true, “_source” : { “test_field” : “test test”, “name” : “test1” } }, { “_index” : “test_index”, “_type” : “_doc”, “_id” : “2”, “_version” : 4, “_seq_no” : 3, “_primary_term” : 1, “found” : true, “_source” : { “test_field” : “test client 1”, “name” : “test1” } } ]}