_mget
可以全局范围内的所有索引中批量查询,使用方式为GET /_mget
;也可以在指定索引下批量查询GET /<index>/_mget
。
基本用法如下:
GET /_mget
{
"docs": [
{
"_index": "my-index",
"_id": "1"
},
{
"_index": "my-index",
"_id": "2"
}
]
}
// 或者
GET /my-index/_mget
{
"docs": [
{
"_id": "1"
},
{
"_id": "2"
}
]
}
// 或者
GET /my-index/_mget
{
"ids" : ["1", "2"]
}
查询参数
-
preference
:可选字符串参数,用于指定查询将在哪一个节点或者分片上执行,默认为随机。 -
realtime
:可选的Boolean参数,true代表要求实时请求,false表示进实时请求,默认为true。 -
refresh
:可选的枚举类型,参数可以是true、false、wait_for,默认值为false,如果为true,则ES刷新受影响的分片是该操作可见以进行搜索;wait_for则等待刷新以使该操作可见以进行搜索;false则表示不进行任何刷新。 -
routing
:可选的字符串参数,以指定的主分片为目标。 -
stored_fields
:可选Boolean参数,如果为true,则检索存储在索引中的文档字段,而不是document
的_source
中的内容。默认为false。 -
_source
:可选的字符串参数,可以是true
、false
或者一个字段列表,表示返回_source
、不返回任何字段、或者返回一个字段列表的值。 -
_source_excludes
:可选的字符串参数列表,要从响应中排除的源字段的逗号分隔列表。 -
_source_includes
:可选的字符串参数列表,包含在响应中的源字段的逗号分隔列表。
请求体中的参数
-
docs:它包含
_id
、_index
、_routing
、_source
(source_include
、source_exclude
)、_stored_fields
-
ids:需要返回的文档的ID列表