别名 API编辑

在一个原子操作中执行一个或多个 别名 操作。

resp = client.indices.update_aliases(
    body={
        "actions": [
            {"add": {"index": "my-data-stream", "alias": "my-alias"}}
        ]
    },
)
print(resp)
response = client.indices.update_aliases(
  body: {
    actions: [
      {
        add: {
          index: 'my-data-stream',
          alias: 'my-alias'
        }
      }
    ]
  }
)
puts response
POST _aliases
{
  "actions": [
    {
      "add": {
        "index": "my-data-stream",
        "alias": "my-alias"
      }
    }
  ]
}

请求编辑

POST _aliases

先决条件编辑

  • 如果启用了 Elasticsearch 安全功能,则您必须具有以下 索引权限

    • 要使用 addremove 操作,您必须对别名及其数据流或索引具有 manage 索引权限。
    • 要使用 remove_index 操作,您必须对索引具有 manage 索引权限。

查询参数编辑

master_timeout
(可选,时间单位) 等待主节点的时间段。如果在超时时间到期之前主节点不可用,则请求将失败并返回错误。默认值为 30s。也可以设置为 -1,表示请求永远不会超时。
timeout
(可选,时间单位) 等待响应的时间段。如果在超时时间到期之前没有收到响应,则请求将失败并返回错误。默认值为 30s

请求正文编辑

actions

(必需,对象数组) 要执行的操作。

actions 对象的属性
<action>

(必需,对象) 键是操作类型。至少需要一个操作。

有效的 <action>
add
将数据流或索引添加到别名。如果别名不存在,则 add 操作将创建它。
remove
从别名中删除数据流或索引。
remove_index
删除索引。您不能对别名或数据流使用此操作。

对象正文包含别名的选项。支持空对象。

<action> 的属性
alias
(必需*,字符串) 操作的别名。索引别名支持 日期数学。如果未指定 aliases,则 addremove 操作需要此参数。对于 remove 操作,此参数支持通配符 (*)。remove_index 操作不支持此参数。
aliases
(必需*,字符串数组) 操作的别名。索引别名支持 日期数学。如果未指定 alias,则 addremove 操作需要此参数。对于 remove 操作,此参数支持通配符 (*)。remove_index 操作不支持此参数。
filter

(可选,查询 DSL 对象 用于限制别名可以访问的文档的查询。

只有 add 操作支持此参数。

index
(必需*,字符串) 操作的数据流或索引。支持通配符 (*)。如果未指定 indices,则需要此参数。对于 addremove_index 操作,与数据流和索引匹配的通配符模式将返回错误。
indices
(必需*,字符串数组) 操作的数据流或索引。支持通配符 (*)。如果未指定 index,则需要此参数。对于 addremove_index 操作,与数据流和索引匹配的通配符模式将返回错误。
index_routing

(可选,字符串) 用于将索引操作路由到特定分片的 value。如果指定,这将覆盖索引操作的 routing value。数据流别名不支持此参数。

只有 add 操作支持此参数。

is_hidden

(可选,布尔值) 如果为 true,则别名是 隐藏的。默认值为 false。别名的所有数据流或索引必须具有相同的 is_hidden value。

只有 add 操作支持此参数。

is_write_index

(可选,布尔值) 如果为 true,则设置别名的写入索引或数据流。

如果别名指向多个索引或数据流,并且未设置 is_write_index,则别名将拒绝写入请求。如果索引别名指向一个索引,并且未设置 is_write_index,则索引将自动充当写入索引。数据流别名不会自动设置写入数据流,即使别名指向一个数据流也是如此。

只有 add 操作支持此参数。

must_exist

(可选,布尔值) 影响尝试删除不存在的别名时的行为。如果为 true,则删除不存在的别名将导致所有操作失败。如果为 false,则删除不存在的别名将只导致该删除失败。默认值为 false

只有 remove 操作支持此参数。

routing

(可选,字符串) 用于将索引和搜索操作路由到特定分片的 value。数据流别名不支持此参数。

只有 add 操作支持此参数。

search_routing

(可选,字符串) 用于将搜索操作路由到特定分片的 value。如果指定,这将覆盖搜索操作的 routing value。数据流别名不支持此参数。

只有 add 操作支持此参数。

响应正文编辑

acknowledged
(布尔值) 如果为 true,则请求在 timeout 时间段内从主节点收到响应。
errors
(布尔值) 如果为 true,则至少有一个请求的操作失败。
action_results

(可选,对象数组) 每个请求操作的结果。

action_results 对象的属性
action

(对象) 关联操作请求的描述。

action 对象的属性
type
(字符串) 关联操作的类型,可以是 addremoveremove_index 之一。
indices
(字符串数组) 关联操作中的索引列表。
aliases
(字符串数组) 关联操作中的别名列表。
status
(整数) 操作返回的 HTTP 状态代码。
error

(可选,对象) 包含有关失败操作的附加信息。

仅在操作失败时出现。