6.X elasticsearch实战学习笔记_索引管理05

滚动索引

ps:

  • 当现有的索引太大、太老时,rollover索引的API将别名滚动到新的索引。
  • 滚动索引API 接受单个别名、条件列表
  • 别名必须指向一个write index ,保证滚动请求有效
  • 不同实现方式,元数据用不同方式被更新

场景1

  • 别名仅指向一个索引,is_write_index不配置
  • 原始索引的别名滚动到新索引,并从原始索引中移除(滚动)

场景2

  • 别名指向多个索引,其中一个索引设置is_write_index:true,用于滚动
  • write index 将参数设置为false,新创建索引将滚动别名指向自己,将参数设为true

示例

  • 创建索引index-001,别名为index_alias1
    在这里插入图片描述

  • 添加滚动索引,若index_alias1指向的始索引7天或7天前创建,或包含1000以上的文档,或索引大小至少5GB,则创建index-002并更新index_alias1指向index-002
    在这里插入图片描述
    命名新索引

  • POST /{old_alias}/_rollover/{new_alias}

日期数学与rollover API结合使用

  • 根据索引滚动的日期来命名索引
  • rollover API支持日期数学,但要求索引名称和短划线和数字结尾,ex:index-0001,每次滚动索引都会递增
  • PUT /<log-{now/d}-1 创建当天日期命名的索引

定义新索引

  • 新索引中的settings、mappings、aliases可取自任何匹配的索引模板,可在请求body中设定settings、mappings、aliases,将覆盖模板中的原有值
    在这里插入图片描述在这里插入图片描述
    Dry run
  • rollover API支持dry_run模式,可在不执行任何实际滚动的情况下,检查请求条件
    在这里插入图片描述

Wait For Active Shards

  • 滚动操作会创建一个新的索引用于滚动,索引创建时的设置 wait_for_active_shards 可适用于滚动操作

Write Index Alias Behavior

  • 滚动一个设置is_write_index:true的索引,在滚动操作期间,滚动操作不会交换这个设置
  • 滚动一个指向多个索引的别名无效

新索引、老索引、索引别名均可执行写操作,但通过索引别名执行写操作,实际上是写入到is_write_index:true的索引

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值