删除 es 索引及数据

删除 es 索引及数据删除 es 索引及数据

大家好,欢迎来到IT知识分享网。

一、删除 除XX(index_pattern)外所有索引及数据

​ from elasticsearch import Elasticsearch # Elasticsearch 的连接信息,添加身份验证 es = Elasticsearch(     ["http://IP:port"],     basic_auth=("es_user", "es_pw")  # 替换为你的用户名和密码 ) # 定义要保留的索引模式 keep_patterns = [     # "device_monitor_log_*",     # "data_log_*",     # "platform_log_*",     "logs-*",     "metrics-*" ] # 获取所有索引 all_indices = es.indices.get_alias(index="*") # 遍历索引,删除不在保留列表中的索引 for index in all_indices:     if not any(index.startswith(pattern.rstrip('*')) for pattern in keep_patterns):         print(f"Deleting index: {index}")         # es.indices.delete(index=index) ​

二、删除指定 index_pattern 索引及数据

​ from elasticsearch import Elasticsearch # Elasticsearch 的连接信息,添加身份验证 es = Elasticsearch(     ["http://IP:port"],     basic_auth=("es_user", "es_pw")  # 替换为你的用户名和密码 ) # 定义要删除的索引前缀 index_pattern = "mss_ods_*" # 获取所有匹配的索引 indices = es.indices.get(index=index_pattern) # 遍历索引并删除 for index in indices:     print(f"Deleting index: {index}")     # es.indices.delete(index=index) ​

三、保留最近的 N 个分片,删除索引及数据

​ from elasticsearch import Elasticsearch # Elasticsearch 的连接信息,添加身份验证 es = Elasticsearch(     ["http://IP:port"],     basic_auth=("es_user", "es_pw")  # 替换为你的用户名和密码 ) index_patterns = [     "data_log_*",     "platform_log_*", ] # 对每个索引模式执行操作 for pattern in index_patterns:     # 获取符合索引模式的所有索引     indices = es.indices.get(index=pattern)     sorted_indices = sorted(indices.keys(), reverse=True)  # 按名称排序,假设索引名称按时间递增     # 保留最近的两个索引,删除其余的     if len(sorted_indices) > 7:         indices_to_delete = sorted_indices[2:]  # 排除最新的两个索引         for index in indices_to_delete:             es.indices.delete(index=index)             print(f"删除旧索引: {index}")     else:         print(f"索引模式 '{pattern}' 下的索引数少于 3 个,没有进行删除操作。")     ​

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/128856.html

(0)
上一篇 2025-08-28 18:00
下一篇 2025-08-28 18:10

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信