Elastic Observability 中的 Streams 如何简化保留管理

作者:来自 Elastic Kevin Lacabane

了解 Streams 如何通过统一视图简化 Elasticsearch 中的保留管理,使用 DSL 或 ILM 来监控、可视化和控制数据生命周期。

在 Elasticsearch 中管理保留策略可能很快变得复杂。在数据流生命周期(DSL)索引生命周期管理(ILM)、模板和单个索引设置之间,保持数据流策略一致通常比应付的工作量大得多。

Streams 改变了这一点。它提供了一种清晰、统一的方式来管理数据的保留时间,无论你使用 DSL 还是 ILM。你可以可视化数据摄取,了解数据在各个层级的位置,并自信地调整保留策略,只需对单个流进行更新,而无需担心对其他地方造成意外影响,所有操作都可通过一个视图完成。

操作指南:探索保留选项卡

保留管理位于每个流的 Retention 选项卡中。这是你的控制面板,用于了解存储了多少数据、数据增长速度以及生命周期策略的应用情况。你还可以在此监控和配置 Failure store,它会跟踪并保留摄取失败的文档。

关键指标一览

在视图顶部,你会看到关键指标概览:

  • 存储大小:流当前持有的数据总量。

  • 摄取平均值:根据选定时间范围计算,Streams 推算每日和每月平均值,让你了解长期趋势。

实时值和预测值的结合可以帮助你快速发现摄取量是否增加,以及保留策略是否与之匹配。

随时间变化的摄取量

在指标下方,图表显示随时间变化的摄取量。此信息基于文档数量与后端索引的平均文档大小估算得出。

生命周期阶段可视化

当 ILM 策略生效时,保留视图变得更具可视化效果。Streams 显示各阶段(hot、warm、cold、frozen)的数据量分布,让你清晰了解数据在存储层级中的分布情况,以及生命周期是否按预期运行。

Failure store

Failure store 是数据流中的第二组索引,用于存储摄取失败的文档。在 Retention 选项卡中,你可以开关 Failure store,并配置其自身的保留周期。本文将更详细介绍 Failure store 和数据质量。

更新保留策略

除了可视化保留,Streams 还使管理保留策略变得简单。

DSL 与 ILM 切换

你可以自由在 DSL 和 ILM 管理模式之间切换,或仅通过几次点击更新 DSL 保留策略。Streams 会在数据流层级更新生命周期设置,确保所有现有后端索引的一致性,而不仅仅是新索引。

无论你偏好 DSL 的简洁,还是 ILM 的分层细粒度,都可以无缝切换。

点击 "Edit data retention" 会打开一个模态窗口,允许你更新流的配置。从这里你可以更新 ILM 策略,或通过 DSL 设置自定义保留周期。

你可以设置自定义周期,或为数据选择无限期保留。

你还可以通过 Upsert streamUpdate ingest stream 设置的 Kibana API 更新流的生命周期。

继承或延迟:不同流类型的策略

Classic streams(经典流)

对于经典流,可以默认使用现有索引模板的保留策略。在这种情况下,保留不由 Streams 管理,而是遵循模板中定义的生命周期配置,就像平常一样。

如果你正在引入现有数据流,并希望在保持其生命周期行为的同时仍能利用 Streams 的可见性和监控功能,这个选项非常有用。

Wired streams(有线流)

有线流存在于树状结构中,这种层级允许继承模型。

子流可以继承其最近具有具体策略(ILM 或 DSL)的祖先的生命周期。这使你的配置保持精简和一致,因为你可以在树的较高层设置单一生命周期,Streams 会自动将其应用于所有相关子流。

如果祖先的生命周期后来被更新,Streams 会将更改级联到所有继承的子流,从而保持同步。

在下图中,我们为 logs.prod 和 logs.staging 环境设置了不同的保留策略。这些环境的子分区会自动继承配置。

底层工作原理

当你应用或更新生命周期时,Streams 会调用 Elasticsearch 的 /_data_stream/_settings。这个 API 是我们在 8.19 / 9.1 中新增的,用于此目的。

该 API 是保持保留策略一致的关键:

  1. 它直接在数据流层应用生命周期,覆盖集群设置或索引模板中的任何配置。

  2. 它将保留更新传播到所有现有后端索引,而不仅仅是新索引,从而确保历史数据和未来数据的保留一致。

通过在数据流层集中管理生命周期,并在后端索引中应用一致配置,我们消除了模板级和索引级配置之间的歧义。你始终知道哪个保留策略实际上在生效,并且可以直接在 UI 中查看。

总结

使用 Streams,保留管理变得清晰且一致。你可以可视化数据摄取,在 DSL 和 ILM 之间切换,或在流之间继承策略,而无需深入模板或手动设置索引。

通过将保留管理统一到单一视图,Streams 让生命周期管理变得简单、可预测且透明。

cloud.elastic.co 注册 Elastic 试用,并体验 Elastic 的 Serverless 产品,可以使用 Streams 的所有功能。

此外,可查看:

原文:www.elastic.co/observabili...

相关推荐
shan~~9 小时前
ubuntu系统安装elasticsearch
ubuntu·elasticsearch·jenkins
2501_938791839 小时前
从原理到实操:彻底解决 Git .gitignore 文件不生效问题
大数据·git·elasticsearch
Elastic 中国社区官方博客9 小时前
如何在 Azure 虚拟机上部署 Elasticsearch
大数据·人工智能·elasticsearch·microsoft·搜索引擎·全文检索·azure
Elasticsearch10 小时前
实时日志与繁荣:修复可观测性中的一个根本性缺陷
elasticsearch
Elasticsearch10 小时前
在 Elasticsearch 中使用 Mistral Chat completions 进行上下文工程
elasticsearch
Elastic 中国社区官方博客21 小时前
Elasticsearch 开放推理 API 增加了对 Google 的 Gemini 模型的支持
大数据·人工智能·elasticsearch·搜索引擎·ai·全文检索·googlecloud
rit84324991 天前
Git常用命令的详细指南
大数据·git·elasticsearch
亚林瓜子1 天前
AWS OpenSearch(ES)启用慢速日志
elasticsearch·性能调优·aws·log·opensearch·日志组
我要升天!1 天前
Git的原理与使用 -- 分支管理
大数据·git·elasticsearch