一、生命周期管理(ilm)

1.1 数据阶段

阶段名称 描述 写入 查询
hot 热数据阶段 频繁写入 频繁查询
warm 温数据阶段 不能写入 较频繁查询
cold 冷数据阶段 不能写入 不频繁查询,查询较慢
frozen 冻结数据阶段 不能写入 很少查询,查询非常慢
delete 删除数据阶段 不能写入 无法查询

1.2 索引操作

操作名称 描述 可执行阶段
allocate 重分配分片所属节点、修改索引副本 warm cold
delete 彻底删除索引 delete
forcemerge 合并索引分片的多个段 hot warm
freeze 冻结索引 cold
migrate 索引在节点间迁移 warm cold
readonly 只读 hot warm cold
rollover 当满足预定条件时候,滚动到新索引 hot
searchable_snapshot 可搜索快照 hot cold frozen
set_priority 设置索引优先级(优先级高的恢复快) hot warm cold
shrink 缩小(成倍数)索引的主分片数量 hot warm
unfollow 跨集群备份取消跟随索引 hot warm cold frozen
wait_for_snapshot 等待快照结束 delete

注意:

(1)热数据阶段,滚动时间起始点为索引创建时间

(2)其他数据阶段(除了热数据阶段),时间计算起始点为滚动结束时间

1.3 示例

image.png

二、观测云实际应用

保存策略 描述 热数据阶段 温数据阶段 删除数据阶段
es_rp0 数据保存 1 天 min_age = 0
rollover {30gb, 1d}
min_age = 6h
forcemerge {1}
shrink {1}
min_age = 1d
delete
es_rp2d 数据保存 2 天 min_age = 0
rollover {30gb, 2d}
min_age = 1d
forcemerge {1}
shrink {1}
min_age = 2d
delete
es_rp1 数据保存 7天 (1周) min_age = 0
rollover {30gb, 7d}
min_age = 1d
forcemerge {1}
shrink {1}
min_age = 7d
delete
es_rp2 数据保存 14天 (2周) min_age = 0
rollover {30gb, 14d}
min_age = 1d
forcemerge {1}
shrink {1}
min_age = 14d
delete
es_rp3 数据保存 30 天(1个月) min_age = 0
rollover {30gb, 30d}
min_age = 1d
forcemerge {1}
shrink {1}
min_age = 30d
delete
es_rp60d 数据保存 60 天(2个月) min_age = 0
rollover {30gb, 60d}
min_age = 1d
forcemerge {1}
shrink {1}
min_age = 60d
delete
es_rp4 数据保存 90 天(3个月) min_age = 0
rollover {30gb, 90d}
min_age = 1d
forcemerge {1}
shrink {1}
min_age = 90d
delete
es_rp5 数据保存 180 天(半年) min_age = 0
rollover {30gb, 180d}
min_age = 1d
forcemerge {1}
shrink {1}
min_age = 180d
delete
es_rp6 数据保存 360 天(1年) min_age = 0
rollover {30gb, 360d}
min_age = 1d
forcemerge {1}
shrink {1}
min_age = 360d
delete
es_rp720d 数据保存 720 天(近2年) min_age = 0
rollover {30gb, 720d}
min_age = 1d
forcemerge {1}
shrink {1}
min_age=720d
delete
es_rp7 数据保存 1095 天(3年) min_age = 0
rollover {30gb, 1095d}
min_age = 1d
forcemerge {1}
shrink {1}
min_age=1095d
delete

三、常见问题

3.1 数据保存时间缩短

修改保存策略后,会滚动出新的索引,之前索引数据不会被删除,一直到满足删除日期条件才会被删除,也即之前索引数据会一直计量收费

image.png

3.2 数据保存时间变长

修改保存策略后,会滚动出新的索引,之前索引数据保存时间不会变长,新的索引保存时间使用新的配置

image.png

四、参考

ILM: Manage the index lifecycleedit

使用索引生命周期管理实现热温冷架构

【最新】Elasticsearch 6.6 Index Lifecycle Management 尝鲜