获取映射 API
编辑获取映射 API编辑
检索一个或多个索引的 映射定义。对于数据流,API 检索流的备份索引的映射。
resp = client.indices.get_mapping( index="my-index-000001", ) print(resp)
response = client.indices.get_mapping( index: 'my-index-000001' ) puts response
res, err := es.Indices.GetMapping(es.Indices.GetMapping.WithIndex("my-index-000001")) fmt.Println(res, err)
GET /my-index-000001/_mapping
路径参数编辑
-
<target>
- (可选,字符串) 用于限制请求的数据流、索引和别名的逗号分隔列表。支持通配符 (
*
)。要定位所有数据流和索引,请省略此参数或使用*
或_all
。
查询参数编辑
-
allow_no_indices
-
(可选,布尔值) 如果为
false
,则如果任何通配符表达式、索引别名 或_all
值仅针对缺失或关闭的索引,则请求将返回错误。即使请求针对其他打开的索引,此行为也适用。例如,如果索引以foo
开头,但没有索引以bar
开头,则针对foo*,bar*
的请求将返回错误。默认为
true
。 -
expand_wildcards
-
(可选,字符串) 通配符模式可以匹配的索引类型。如果请求可以定位数据流,则此参数确定通配符表达式是否匹配隐藏的数据流。支持逗号分隔的值,例如
open,hidden
。有效值为-
all
- 匹配任何数据流或索引,包括 隐藏 的数据流或索引。
-
open
- 匹配打开的、非隐藏的索引。还匹配任何非隐藏的数据流。
-
closed
- 匹配关闭的、非隐藏的索引。还匹配任何非隐藏的数据流。数据流不能关闭。
-
hidden
- 匹配隐藏的数据流和隐藏的索引。必须与
open
、closed
或两者结合使用。 -
none
- 不接受通配符模式。
默认为
open
。 -
-
ignore_unavailable
- (可选,布尔值) 如果为
false
,则如果请求针对缺失或关闭的索引,则请求将返回错误。默认为false
。 -
local
- (可选,布尔值) 如果为
true
,则请求仅从本地节点检索信息。默认为false
,这意味着信息是从主节点检索的。 -
master_timeout
- (可选,时间单位) 等待主节点的期限。如果在超时到期之前主节点不可用,则请求将失败并返回错误。默认为
30s
。也可以设置为-1
,表示请求永远不会超时。
示例编辑
多个数据流和索引编辑
获取映射 API 可用于通过单个调用获取多个数据流或索引。API 的一般用法遵循以下语法:host:port/<target>/_mapping
,其中 <target>
可以接受逗号分隔的名称列表。要获取集群中所有数据流和索引的映射,请对 <target>
使用 _all
或 *
,或省略 <target>
参数。以下是一些示例
resp = client.indices.get_mapping( index=["my-index-000001", "my-index-000002"], ) print(resp)
response = client.indices.get_mapping( index: 'my-index-000001,my-index-000002' ) puts response
GET /my-index-000001,my-index-000002/_mapping
如果您想获取集群中所有索引的映射,以下示例是等效的
$params = [ 'index' => '*', ]; $response = $client->indices()->getMapping($params); $params = [ 'index' => '_all', ]; $response = $client->indices()->getMapping($params); $response = $client->indices()->getMapping();
resp = client.indices.get_mapping( index="*", ) print(resp) resp = client.indices.get_mapping( index="_all", ) print(resp) resp = client.indices.get_mapping() print(resp)
response = client.indices.get_mapping( index: '*' ) puts response response = client.indices.get_mapping( index: '_all' ) puts response response = client.indices.get_mapping puts response
{ res, err := es.Indices.GetMapping(es.Indices.GetMapping.WithIndex("*")) fmt.Println(res, err) } { res, err := es.Indices.GetMapping(es.Indices.GetMapping.WithIndex("_all")) fmt.Println(res, err) } { res, err := es.Indices.GetMapping() fmt.Println(res, err) }
GET /*/_mapping GET /_all/_mapping GET /_mapping