ES 生命周期管理

一 .概念

ILM定义了四个生命周期阶段:
Hot:正在积极地更新和查询索引。
Warm:不再更新索引,但仍在查询。
cold:不再更新索引,很少查询。信息仍然需要可搜索,但是如果这些查询速度较慢也可以。
Delete:不再需要该索引,可以安全地将其删除

仅仅在 Hot阶段 可以设置 rollover滚动

在实验中可以修改设置,来缩短ILM检测时间间隔。ILM定期运行(indices.lifecycle.poll_interval),默认是10分钟,检查索引是否符合策略标准,并执行所需的任何步骤

PUT /_cluster/settings

{ "transient": { "indices.lifecycle.poll_interval": "1m" } }

参数的设置:满足任意一个创建新的索引

HOT

WARM

Delete

二. 实战

1 .创建生命周期策略模板:PUT 请求

http://localhost:9099/_ilm/policy/my_index_rollover_policy

"max_docs": 5000000 设置超过500万是创建新的索引,实际测试可以设置小一点

{
    "policy": {
        "phases": {
            "hot": {
                "actions": {
                    "rollover": {
                        "max_docs": 5000000
                    },
                    "set_priority": {
                        "priority": 100
                    }
                }
            },
            "warm": {
                "min_age": "30d",
                "actions": {
                    "forcemerge": {
                        "max_num_segments": 1
                    },
                    "shrink": {
                        "number_of_shards": 1
                    },
                    "allocate": {
                        "number_of_replicas": 1
                    },
                    "set_priority": {
                        "priority": 50
                    }
                }
            },
            "cold": {
                "min_age": "90d",
                "actions": {
                    "freeze": {},
                    "allocate": {
                        "require": {
                            "type": "cold"
                        }
                    },
                    "set_priority": {
                        "priority": 10
                    }
                }
            },
            "delete": {
                "min_age": "3650d",
                "actions": {
                    "delete": {}
                }
            }
        }
    }
}

2. 创建索引模板(日志统计索引) PUT 请求:

http://localhost:9099/_template/my_statistic_log

{
    "index_patterns": [
        "my_statistic_log-*"
    ],
    "settings": {
        "index.number_of_shards": 5,
        "index.number_of_replicas": 1,
        "refresh_interval": "60s",
        "index.lifecycle.name": "my_index_rollover_policy",
        "index.lifecycle.rollover_alias": "statistic_log_write"
    },
    "aliases": {
        "statistic_log_read": {}
    },
    "mappings": {
        "log": {
            "dynamic": "strict",
            "_field_names": {
                "enabled": false
            },
            "dynamic_templates": [
                {
                    "date": {
                        "match": "*Date",
                        "mapping": {
                            "type": "date"
                        }
                    }
                },
                {
                    "strings": {
                        "match_mapping_type": "string",
                        "mapping": {
                            "type": "keyword"
                        }
                    }
                },
                {
                    "long_or_text": {
                        "match": "*Time",
                        "mapping": {
                            "type": "date"
                        }
                    }
                },
                {
                    "dataFormat": {
                        "match": "*Date",
                        "mapping": {
                            "type": "date"
                        }
                    }
                },
                {
                    "timeFormat": {
                        "match": "*Time",
                        "mapping": {
                            "type": "date"
                        }
                    }
                },
                {
                    "noAnalyzed": {
                        "match_mapping_type": "string",
                        "mapping": {
                            "type": "keyword"
                        }
                    }
                }
            ],
            "properties": {
                "area": {
                    "type": "keyword"
                },
                "desc": {
                    "type": "keyword"
                },
                "hour": {
                    "type": "integer"
                },
                "day": {
                    "type": "integer"
                },
                "startTime": {
                    "type": "date",
                    "format": "yyyy-MM-dd HH:mm:ss"
                },
                "totalCount": {
                    "type": "long"
                }
            }
        }
    }
}

3.    根据索引模板创建起始索引(日志统计索引)
put 请求: http://localhost:9099/my_statistic_log-000001

{
    
    "aliases": {
        "statistic_log_write": {
            "is_write_index": true
        }
    }
}

4.    查看索引生效:GET请求 
http://localhost:9099/my_statistic_log-000001/_ilm/explain

https://www.elastic.co/guide/en/elasticsearch/reference/6.8/_setting_up_a_new_policy.html

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

出吉林大学计算机考研资料适用于计专966/计学941/软专967

本人是24上岸吉大计算机专硕的考生,先上成绩: 出专业课备考过程的相关笔记资料,也可以提供经验分享等: 吉林大学计算机数据结构基础算法ADL汇总,适用于计专966/计学941/软专967综合整理小绿书以及期末题上重难点算法…

字符串和字符串函数(2)

前言: 在字符串和字符串函数(1)-CSDN博客中,已将将字符串和字符函数的使用了解,并且实现模拟了一些字符串的库函数。 接下来将继续深入学习字符串和字符串函数。并且模拟实现一些较为复杂的函数。 可控制字符…

gpt-4o api申请开发部署应用:一篇全面的指南

利用 GPT-4o API 开发创新应用:一篇全面的指南 OpenAI 的 GPT-4o 是一款集成了音频、视觉和文本处理能力的多模态人工智能模型,它的出现代表了人工智能领域的重大进步。在本篇文章中,我们将详细介绍如何通过 OpenAI API 使用 GPT-4o&#xf…

xcode开发swift允许发送http请求设置

Xcode 现在新建项目默认只支持HTTPS请求,认为HTTP请求不安全,所以不支持。但是开发环境一般都是http模式,所以需要单独配置才可以访问。 需要到项目的设置里面,点击info,如果没有App Transport Security Setting这一项…

【源码】Spring Data JPA原理解析之Repository自定义方法命名规则执行原理(二)

Spring Data JPA系列 1、SpringBoot集成JPA及基本使用 2、Spring Data JPA Criteria查询、部分字段查询 3、Spring Data JPA数据批量插入、批量更新真的用对了吗 4、Spring Data JPA的一对一、LazyInitializationException异常、一对多、多对多操作 5、Spring Data JPA自定…

生信分析进阶3 - pysam操作bam文件统计unique reads和mapped reads高级技巧合辑

pysam操作bam文件统计unique reads和mapped reads高级技巧 1. Linux服务器读取bam文件 服务器查看bam常用方法。 # bam_path: bam文件路径 samtools view -h bam_path|grep -v ^|less -S2. samtools python os库读取bam文件 缺点速度较慢。 import os# 读取ba…

springboot从2.7.2 升级到 3.3.0

文章目录 概要准备报错调整小结后记 概要 时代在进步,springboot已经来到了3.3.0 , 于是我们也打算升级下sbvadmin到3.3, jdk使用21的版本,下面是升级过程中碰到的一些问题,问题不大。 2.7.2 -> 3.3.0 准备 下载jdk21&#…

AdroitFisherman模块安装日志(2024/5/31)

安装指令 pip install AdroitFisherman-0.0.29.tar.gz -v 安装条件 1:Microsoft Visual Studio Build Tools 2:python 3.10.x 显示输出 Using pip 24.0 from C:\Users\12952\AppData\Local\Programs\Python\Python310\lib\site-packages\pip (python 3.10) Processing c:\u…

UML静态图-类图

概述 静态图包含类图、对象图和包图的主要目的是在系统详细设计阶段,帮助系统设计人员以一种可视化的方式来理解系统的内部结构和代码结构,包括类的细节、类的属性和操作、类的依赖关系和调用关系、类的包和包的依赖关系。 一、类图的表示法 类图(Cla…

【linux】自定义快捷命令/脚本

linux自定义快捷命令 场景自定义命令自定义脚本 场景 深度学习经常要切换到自己环境,conda activate mmagic,但是又不想每次重复打这么多字,想使用快捷命令直接切换。 自定义命令 使用别名(alias)或自定义脚本来创建…

【期末速成】——计算机组成原理(1)

目录 一、什么是计算机的组成 二、冯诺依曼体系结构计算机的特点 三、计算机系统的层次结构 四、机器语言、汇编语言、高级语言, 五、 编译程序、解释程序、汇编程序 六、已知主频、CPI计算程序运行时间 一、什么是计算机的组成 计算机的组成可以分为五个部件和两个信息…

10.Halcon3D点云和MESH的相互转换

1.实现效果 这个案例主要是想告诉我们,如何在点云数据(全是点)和MESH(网格数据)中转换,理论上说可以点云数据可以看作的离散的,而MESH网格数据可以看作是连续的。 上图展示了三个(其实是四个)空间中的3d对象,左边第一个是一个立方体,经过降采样之后的点云,中间的是…

systemctl 添加自定义系统服务

以 “启动、停止、重启” boa web server为例: 1. 编写系统服务脚本 编写一个符合系统服务规范的脚本。这个脚本通常描述了服务的启动、停止、重启等行为。你可以使用shell、C、C、Java等语言来编写这个脚本。 # boa_server_run.sh:#!/bin/bashset -e …

浅谈申请小程序地理位置权限的正确打开方式

小程序地理位置接口有什么功能? 这篇内容会教大家如何快速申请“获取当前的地理位置(onLocationChange)”接口,以便帮助大家顺利开通接口。以下内容是本人经历了多次的申请经历得出来的经验,来之不易,望大家…

基础—SQL—DQL(数据查询语言)分页查询

一、引言 上一篇博客学习了排序查询,这次来讲查询的最后一个部分:分页查询。 涉及到的关键字是:LIMIT 。 二、DQL—分页查询 对于分页,不管以后做的是传统的管理系统还是做互联网的项目,基本上都会遇到分页查询的操…

【C语言】常见的动态内存的错误

前言 在动态内存函数的使用过程中我们可能会遇到一些错误,这里将常见的错误进行总结。 对NULL解引用 请看以下代码: 可以看到,这时我们的malloc开辟是失败的,所以返回的是空指针NULL,而我们却没有进行检查&#xff0…

东莞酷得智能 组装机械狗电子玩具方案

这款机械狗玩具电子方案结合了现代电子技术和人工智能元素,旨在为用户提供一个高科技、互动性强的娱乐体验。通过不断的软件更新和硬件迭代,机械狗的功能将持续扩展。 一、功能特点: 1、自动巡游:机械狗能够自主在房间内巡游&am…

计算机组成原理-----实验1

实 验 报 告 实验一 基本运算器实验 1、实验目的 (一)了解运算器的组成结构; (二) 掌握运算器的工作原理; (三)熟悉运算器的数据传送通路; (四)按…

Amis源码构建 sdk版本

建议在linux环境下构建(mac环境下也可以),需要用到sh脚本(amis/build.sh)。 Js sdk打包是基于fis进行编译打包的,具体可见fis-conf.js: amis-master源码下载:https://github.com/baidu/amis g…

推荐几款优秀的文档加密软件 | 企业文件加密解决方案

在数字化时代,信息安全问题日益突出,文档加密软件成为了保护数据安全的重要手段。但是,市面上的文档加密软件种类繁多,功能各异,如何选择一款好用的文档加密软件成为了许多用户关注的焦点。本文将为大家提供一份实用的…