- 文档首页
云搜索服务
最佳实践
时序数据管理
利用 Data Streams 和 ISM 实现时序数据管理
时序数据管理
利用 Data Streams 和 ISM 实现时序数据管理
利用 Data Streams 和 ISM 实现时序数据管理
本文以日志数据为例,介绍如何通过 OpenSearch 的 Data Streams 和 ISM 功能轻松实现时序数据的管理。
在时序数据场景(例如日志数据)中,为了防止单个索引大小无限增长,常见的数据管理方法是将数据按天存储,每天通过 Rollover 切换到一个新的写索引,同时通过别名保证旧索引能被检索。这个数据管理流程包含了众多步骤,包括创建索引别名、创建 Rollover 数据管理策略、创建初始化索引、设置可写索引等步骤,操作流程比较繁琐。
Data Streams 就是为时序数据管理场景而设计的功能,极大地简化了数据管理的配置步骤。本文以 nginx-log-generator 工具模拟生成的 Nginx 日志数据为例,介绍如何通过 OpenSearch 的 Data Streams 和 ISM 的功能组合来简化数据管理工作。 - 本文介绍的时序数据管理方法目前仅适用于 OpenSearch 实例和 Elasticsearch 7.10.2 实例。本文中使用 OpenSearch 实例作为示例。
- 索引模板和 ISM 策略只能针对未创建的数据流自动关联生效,也不支持直接将一个已经存在的索引转成 Data Stream,因此请先创建索引模板和 ISM 策略,再开始日志数据的写入。
- 在页面左侧菜单,选择 Management > Dev Tools,进入开发工具页面。
- 创建名称为nginx-logs-template的索引模板。如果用户写入的索引名称是以 nginx-logs-开头,则系统会自动将其创建为数据流,同时创建对应的 backing index。
说明
数据流默认要求写入的索引带有@timestamp字段,如果想用其他字段名,可以在创建索引模板的时候显式指定。
- 在实例的 Dashboards 页面,进入 Management > Dev Tools 开发工具页面。
- 创建自动 Rollover 策略,并关联索引模板。
- 创建 id 为rollover_nginx_logs的 ISM 策略,该策略会把一天前创建的索引自动 Rollover,并创建新的 backing index。
OpenSearch 实例
Elasticsearch 7.10.2 实例
您需要完成创建索引模板和 ISM 策略的操作后,您才可以开始写入数据。如果写入的索引名称匹配到nginx-logs-*模式,系统就会自动创建对应的 Data Stream 和写入索引。
ISM 会把执行记录保存到索引.opendistro-ism-managed-index-history*中,您可以在 Dashboards 中像常规索引数据的可视化查询方法一样查询 ISM Policy 策略的历史执行记录。
如果仍然无法解决您的问题,您还可以通过提交工单进行咨询。
最近更新时间:2026.09.24 15:54:06