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

news2024/11/17 12:47:44

大家好,我是好学的小师弟,今天和大家讨论下更新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状态

{
	"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.更新完索引生命周期策略后,新策略已经对索引生效,索引符合新的策略的滚动条件,滚动中

{
	"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阶段

{
	"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
			}
		}
	}
}

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

转载注明出处!

                                                     

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1082547.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Webpack 解决:ReferenceError: dist is not defined 的问题

1、问题描述: 其一、报错为: ReferenceError: dist is not defined 中文为: ReferenceError:dist 未定义 其二、问题描述为: 想在 webpack 的配置中,创建一个 dist 文件夹来存放 npm run build 打包后…

docker- harbor私有仓库部署与管理

什么是 harbor harbor是一个开源的云原生镜像仓库,它允许用户存储、签名、和分发docker镜像。可以将 harbor 看作是私有的docker hub ,它提供了更新安全性和控制性,让组织能够安全的存储和管理镜像 harbor RBAC(基于角色访问控制…

zsh: command not found: conda问题解决

参考:https://zhuanlan.zhihu.com/p/158703094 一、问题介绍与环境介绍 系统为macOS Catalina 10.15.4 所用终端为zsh 安装了oh-my-zsh之后conda命令在终端中不可用。 二、原因分析 终端中zsh的可访问的程序一般放在/bin, /usr/bin, /usr/local/bin,/bin目录下&…

Linux sed命令

在Linux系统中,有许多强大的文本处理工具,其中之一就是sed(Stream Editor)命令。sed是一个用于对文本进行编辑、替换、删除和过滤操作的命令行工具,一次处理一行内容。它具有强大的正则表达式支持和灵活的文本处理功能…

华为李鹏:加速5G商业正循环,拥抱更繁荣的5.5G(5G-A)

2023年10月10日,在华为主办的第十四届全球移动宽带论坛上,华为高级副总裁、运营商BG总裁李鹏面向来自全球的运营商和产业伙伴,提出抓住网络需求和趋势的力量——“面向后天的业务,积极规划明天的网络,加速5G商业正循环…

堆叠、集群技术

1.堆叠、集群技术的概述 堆叠、集群简介 堆叠(iStack),将多台支持堆叠特性的交换机通过堆叠线缆连接在一起,从逻辑上虚拟成一台交换设备,作为一个整体参与数据转发。 集群(Cluster Switch System&#xf…

Fisher辨别分析

问题要求 在UCI数据集上的Iris和Sonar数据上验证算法的有效性。训练和测试样本有三种方式(三选一)进行划分: (一) 将数据随机分训练和测试,多次平均求结果 (二)K折交叉验证 &…

Vuex存值取值与异步请求处理

目录 前言 一、Vuex简介 1.Vuex是什么 2.Vuex的核心概念 3.使用Vuex的好处 4.Vuex执行流程 二、Vuex的使用步骤 1.安装Vuex 2.创建store模块,分别维护state/actions/mutations/getters 3.使用Vuex存储值,获取值和改变值 1.state.js---存值 2.…

【AI】深度学习——前馈神经网络——卷积神经网络

文章目录 1.2 卷积神经网络1.2.1 卷积一维卷积近似微分低通滤波器/高通滤波器卷积变种 二维卷积卷积的核心就是翻转相乘卷积应用于图像处理 互相关互相关代替卷积 卷积与互相关的交换性 1.2.2 卷积神经网络卷积代替全连接卷积层特征映射卷积层结构参数数量 汇聚层(池化层)汇聚层…

C语言,洛谷题,压缩技术2.0

题目如下: 这题用C语言实现有一些难度,要用到一个库函数,strcat(头文件是string.h),用于连接两个字符串数组,strcat(str,arr)就是将arr字符数组后面的\0清除,再将arr字符拼接到str上…

python之K线模式识别

1、晨星 晨星也称作早晨之星,它是一种三日形态的K线组合,第一日是阴线,第二日价格振幅较小,第三日出现阳线,它的一般形态如下图所示。晨星的K线组合形态一般出现在下跌的趋势之后,预示着价格的上升回调。其…

网络-HTTPS

文章目录 前言一、HTTPS简介优点SSL/TSL工作流程 加密1、对称加密2、非对称加密 二、使用HTTPS1.openSSL生成私钥(1)node服务端(2)nginx配置https服务(前端) nginx服务 总结 前言 Http 存在不安全、无状态…

校园贴吧微信小程序搭建教程

大家好啊,罗峰今天来分享一下如何搭建一个校园贴吧微信小程序。一起来看看吧。 开发流程如下: 1.小程序注册:使用微信开放平台账号登录,创建一个新的小程序,并记录下小程序的 AppID。 2.项目初始化:使用微…

上海亚商投顾:沪指冲高回落 华为概念股持续活跃

上海亚商投顾前言:无惧大盘涨跌,解密龙虎榜资金,跟踪一线游资和机构资金动向,识别短期热点和强势个股。 一.市场情绪 沪指昨日高开低走,创业板指冲高回落。华为产业链继续活跃,鸿蒙方向领涨,润…

Idea创建springboot工程的时候,发现pom文件没有带<parent>标签

今天创建springboot工程,加载maven的时候报错: 这个问题以前遇到过,这是因为 mysql-connector-j 没有带版本号的原因,但是springboot的依赖的版本号不是都统一交给spring-boot-starter-parent管理了吗,为什么还会报错&…

CSS-注册页面

<!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>注册页面</title><style>*{margin:0px;padding: 0px;box-sizing: border-box;}body{background: url("../image/img/register_bg.png…

OpenCV实现图像傅里叶变换

傅里叶变换 dftcv.dft(img_float32,flagscv.DFT_COMPLEX_OUTPUT): flags:标志位&#xff0c;指定变换类型&#xff0c;cv.DFT_COMPLEX_OUTPUT会返回复数结果。 傅立叶变换&#xff0c;将输入的图像从空间域转换到频率域。 返回结果: 此函数返回一个复杂数值数组&#xff0c…

多尺度retinex图像去雾算法matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 matlab2022a 3.部分核心程序 clc; clear; close all; warning off; addpath(genpath(pwd)); rng(default)img_in im2doub…

Android 10.0 framework层实现app默认全屏显示

1.前言 在10.0的系统开发中,在对于第三方app全屏显示的功能需求开发中,需要默认app全屏显示,针对这一个要求,就需要在系统启动app 的过程中,在绘制app阶段就设置全屏属性,接下来就实现这个功能 效果图如下: 2.framework层实现app默认全屏显示的核心类 frameworks\base\…

Webapck 解决:[webpack-cli] Error: Cannot find module ‘vue-loader/lib/plugin‘ 的问题

1、问题描述&#xff1a; 其一、报错为&#xff1a; [webpack-cli] Error: Cannot find module vue-loader/lib/plugin 中文为&#xff1a; [webpack-cli] 错误&#xff1a;找不到模块“vue-loader/lib/plugin” 其二、问题描述为&#xff1a; 在项目打包的时候 npm run …