【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
			}
		}
	}
}

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

转载注明出处!

相关推荐
草莓熊Lotso7 分钟前
Qt 进阶核心:UI 开发 + 项目解析 + 内存管理实战(从 Hello World 到对象树)
运维·开发语言·c++·人工智能·qt·ui·智能手机
薛定谔的猫19827 小时前
RAG(二)基于 LangChain+FAISS + 通义千问搭建轻量级 RAG 检索增强生成系统
运维·服务器·langchain
档案宝档案管理7 小时前
档案宝自动化档案管理,从采集、整理到归档、利用,一步到位
大数据·数据库·人工智能·档案·档案管理
米高梅狮子7 小时前
4. Linux 进程调度管理
linux·运维·服务器
郑州光合科技余经理8 小时前
技术架构:上门服务APP海外版源码部署
java·大数据·开发语言·前端·架构·uni-app·php
云器科技8 小时前
告别Spark?大数据架构的十字路口与技术抉择
大数据·架构·spark·lakehouse·数据湖仓
再创世纪8 小时前
让USB打印机变网络打印机,秀才USB打印服务器
linux·运维·网络
人生匆匆9 小时前
k8s通过域名访问 StatefulSet的pod
云原生·容器·kubernetes
zhongerzixunshi9 小时前
把握申报机遇 赋能高质量发展
大数据·人工智能
昨夜见军贴06169 小时前
IACheck AI审核如何实现自动化来料证书报告审核,全面提升生产效率与合规水平
运维·人工智能·自动化