【ElasticSearch】更新es索引生命周期策略,策略何时对索引生效

大家好,我是好学的小师弟,今天和大家讨论下更新es索引生命周期策略后,策略何时对索引生效

结论:

若当前索引已应用策略A(旧),更新完策略A后,新的策略A会立即对原来的已经应用该策略的索引生效;若当前索引符合新策略A的生命周期变化条件,则会自动进入下一阶段(hot-warm-cold-delete)

举例:

比方说原来策略是10g就滚动索引,你现在索引大小为8G,不符合滚动条件,但是你更新的策略为4G,那么更新策略完成后,等待一段时间(10分钟左右),索引即可完成滚动,因为8G符合4g的滚动条件

具体细节:

1.几个关键字段

以下字段value均是时间戳,通过观察三张图里的这些时间戳,即可得出结论:更新后的策略对原来已经应用该策略的索引,立即生效

lifecycle_date_millis: 指的是索引创建的时间戳,这里的索引指的是一开始创建这个索引的时间,或者是滚动后新索引的创建时间

phase_time_millis: 索引进入当前生命周期阶段的时间戳,以毫秒为单位

action: 当前生命周期阶段执行的操作,可能的值包括:complete、delete、rollover。

action_time_millis: 执行当前操作的时间戳,跟action字段对应

step_time_millis: 执行当前子步骤的时间戳,跟step字段对应

modified_date_in_millis: 索引生命周期策略的修改时间戳

2.更新完索引生命周期策略后,新策略已经对索引生效,索引目前处于check policy状态

javascript 复制代码
{
	"indices": {
		"test_2023.03.21-000001": {
			"index": "test_2023.03.21-000001",
			"managed": true,
			"policy": "test",
			"lifecycle_date_millis": 1679394264357, //2023-03-21 18:24:24
			"age": "203.41d",
			"phase": "hot",
			"phase_time_millis": 1693479366940, //2023-08-31 18:56:06
			"action": "rollover",
			"action_time_millis": 1679394338025, //2023-03-21 18:25:38
			"step": "check-rollover-ready",
			"step_time_millis": 1693479366940, //2023-08-31 18:56:06
			"is_auto_retryable_error": true,
			"failed_step_retry_count": 2,
			"phase_execution": {
				"policy": "test",
				"phase_definition": {
					"min_age": "3ms",
					"actions": {
						"rollover": {
							"max_size": "4831838208b"
						},
						"set_priority": {
							"priority": 100
						}
					}
				},
				"version": 5,
				"modified_date_in_millis": 1696969009629 //2023-10-11 04:16:49
			}
		}
	}
}

3.更新完索引生命周期策略后,新策略已经对索引生效,索引符合新的策略的滚动条件,滚动中

javascript 复制代码
{
	"indices": {
		"test_2023.03.21-000001": {
			"index": "test_2023.03.21-000001",
			"managed": true,
			"policy": "test",
			"lifecycle_date_millis": 1679394264357, //2023-03-21 18:24:24
			"age": "203.41d",
			"phase": "hot",
			"phase_time_millis": 1693479366940, //2023-08-31 18:56:06
			"action": "rollover",
			"action_time_millis": 1679394338025, //2023-03-21 18:25:38
			"step": "attempt-rollover", //这里已经开始尝试滚动
			"step_time_millis": 1696969116221, //2023-10-11 04:18:36
			"phase_execution": {
				"policy": "test",
				"phase_definition": {
					"min_age": "3ms",
					"actions": {
						"rollover": {
							"max_size": "4831838208b"   //这里已经适配了最新的策略4.5G
						},
						"set_priority": {
							"priority": 100
						}
					}
				},
				"version": 5,
				"modified_date_in_millis": 1696969009629 //2023-10-11 04:16:49
			}
		}
	}
}

4.下面的是策略生效,索引滚动完毕,已经进入warm阶段

javascript 复制代码
{
	"indices": {
		"test_2023.03.21-000001": {
			"index": "test_2023.03.21-000001",
			"managed": true,
			"policy": "test",
			"lifecycle_date_millis": 1696969219587, //2023-10-11 04:20:19
			"age": "13.12h",
			"phase": "warm",
			"phase_time_millis": 1696969755909, //2023-10-11 04:29:15
			"action": "complete",
			"action_time_millis": 1696972068230, //2023-10-11 05:07:48
			"step": "complete",
			"step_time_millis": 1696972068230, //2023-10-11 05:07:48
			"phase_execution": {
				"policy": "test",
				"phase_definition": {
					"min_age": "5ms",
					"actions": {
						"allocate": {
							"number_of_replicas": 0,
							"include": {},
							"exclude": {
								"box_type": "cold,hot"
							},
							"require": {
								"box_type": "warm"
							}
						},
						"forcemerge": {
							"max_num_segments": 1
						},
						"set_priority": {
							"priority": 50
						},
						"shrink": {
							"number_of_shards": 1
						}
					}
				},
				"version": 5,
				"modified_date_in_millis": 1696969009629 //2023-10-11 04:16:49
			}
		}
	}
}

新人创作不易,觉得不错的看官,点个赞吧,么么哒!!!

转载注明出处!

相关推荐
阿梦Anmory9 分钟前
Ubuntu配置代理最详细教程
linux·运维·ubuntu
忆~遂愿20 分钟前
CANN ATVOSS 算子库深度解析:基于 Ascend C 模板的 Vector 算子子程序化建模与融合优化机制
大数据·人工智能
呉師傅23 分钟前
【使用技巧】Adobe Photoshop 2024调整缩放与布局125%后出现点菜单项漂移问题的简单处理
运维·服务器·windows·adobe·电脑·photoshop
heartbeat..26 分钟前
JVM 性能调优流程实战:从开发规范到生产应急排查
java·运维·jvm·性能优化·设计规范
chian-ocean33 分钟前
百万级图文检索实战:`ops-transformer` + 向量数据库构建语义搜索引擎
数据库·搜索引擎·transformer
小Tomkk1 小时前
数据库 变更和版本控制管理工具 --Bytebase 安装部署(linux 安装篇)
linux·运维·数据库·ci/cd·bytebase
赌博羊1 小时前
ImportError: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32‘ not found
linux·运维·gnu
消失的旧时光-19431 小时前
Linux 入门核心命令清单(工程版)
linux·运维·服务器
艾莉丝努力练剑1 小时前
【Linux:文件】Ext系列文件系统(初阶)
大数据·linux·运维·服务器·c++·人工智能·算法
小天源2 小时前
Cacti在Debian/Ubuntu中安装及其使用
运维·ubuntu·debian·cacti