【Elasticsearch】_rollover API详解

解释 POST logs-foo-bar/_rollover

在Elasticsearch中,POST logs-foo-bar/_rollover 是一个API调用,用于触发索引的滚动操作。滚动操作允许您在索引达到一定大小或时间限制时,自动将写入操作切换到一个新的索引,同时保留旧索引的数据。这个操作通常用于管理时间序列数据,例如日志数据,以避免单个索引变得过大。

滚动操作的工作原理
  1. 创建索引模板

    • 首先,您需要创建一个索引模板,定义新索引的结构和设置。

    JSON复制

    复制代码
    PUT _index_template/my_template
    {
      "index_patterns": ["logs-foo-bar-*"],
      "template": {
        "settings": {
          "number_of_shards": 2,
          "number_of_replicas": 1
        }
      }
    }
  2. 创建初始索引并设置别名

    • 创建一个初始索引,并为其设置一个写入别名。

    JSON复制

    复制代码
    PUT logs-foo-bar-000001
    {
      "aliases": {
        "logs-foo-bar-write": {
          "is_write_index": true
        }
      }
    }
  3. 触发滚动操作

    • 使用 _rollover API 触发滚动操作。您可以指定滚动的条件,例如索引中的文档数量、索引的大小或索引的年龄。

    JSON复制

    复制代码
    POST logs-foo-bar-write/_rollover
    {
      "conditions": {
        "max_docs": 1000000,
        "max_size": "50gb",
        "max_age": "30d"
      }
    }
    • 如果当前索引满足滚动条件,Elasticsearch将创建一个新的索引,并将写入别名指向新索引。
  4. 验证滚动结果

    • 您可以通过查询别名来验证滚动操作是否成功。

    JSON复制

    复制代码
    GET logs-foo-bar-write
注意事项
  • 滚动条件

    • max_docs:索引中的最大文档数量。

    • max_size:索引的最大大小。

    • max_age:索引的最大年龄。

    • max_primary_shard_size:主分片的最大大小。

    • max_num_segments:索引的最大段数。

    • min_index_age:索引的最小年龄。

    • min_doc_count:索引中的最小文档数量。

  • 别名管理

    • 写入别名(is_write_index)决定了滚动后旧索引是否仍然可写。如果未配置,旧索引将不可写;如果配置为 true,旧索引将变为只读。
  • 自动化

    • 您可以通过 _rollover API 手动触发滚动操作,也可以使用索引生命周期管理(ILM)来自动化滚动操作。

通过使用 POST logs-foo-bar/_rollover,您可以有效地管理Elasticsearch中的索引,确保数据的可扩展性和查询性能。

相关推荐
A__tao1 小时前
Elasticsearch Mapping 一键生成 Go Struct,支持嵌套解析
elasticsearch·es
zs宝来了2 小时前
Elasticsearch 索引原理:倒排索引与 Segment 管理
elasticsearch·索引·倒排索引·源码解析·segment
切糕师学AI3 小时前
Elasticsearch 向量索引深度解析:从原理到生产实践
大数据·elasticsearch·搜索引擎·语义搜索·相似性搜索·语义理解
A__tao4 小时前
告别手写!ES Mapping 自动生成 Go Struct(支持嵌套)
elasticsearch·golang·es
Elastic 中国社区官方博客17 小时前
当 TSDS 遇到 ILM:设计不会拒绝延迟数据的时间序列数据流
大数据·运维·数据库·elasticsearch·搜索引擎·logstash
沐风___17 小时前
Claude Code 权限模式完全指南:Auto、Bypass、Ask 三模式深度解析
大数据·elasticsearch·搜索引擎
色空大师1 天前
网站搭建实操(八)后台管理-搜索服务
java·elasticsearch·搭建网站·论坛
Elastic 中国社区官方博客1 天前
使用 Elastic Workflows 监控 Kibana 仪表板视图
大数据·运维·数据库·elasticsearch·搜索引擎·全文检索·kibana
切糕师学AI1 天前
Elasticsearch 列式存储详解:Doc Values 的原理与实践
大数据·elasticsearch·搜索引擎·列式存储
色空大师1 天前
【ElasticSearch(ES)】安装及介绍
大数据·elasticsearch·搜索引擎·搜索