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...

相关推荐
Elasticsearch6 分钟前
开始使用 Elastic Agent Builder 和 Microsoft Agent Framework
elasticsearch
小猪佩奇TONY4 小时前
OpenGL-ES 学习(16) ----Pixel Buffer Object
服务器·学习·elasticsearch
q***48419 小时前
SpringBoot整合easy-es
spring boot·后端·elasticsearch
q***766618 小时前
Java_ElasticSearch(ES)——分布式搜索引擎
java·elasticsearch·搜索引擎
Hello.Reader19 小时前
Flink CDC 用 PolarDB-X CDC 实时同步数据到 Elasticsearch
大数据·elasticsearch·flink
weixin_456904271 天前
Git大文件管理与版本回退
大数据·git·elasticsearch
天下无敌笨笨熊1 天前
ES作为向量库研究
大数据·python·elasticsearch
Hello.Reader1 天前
Flink CDC 用 SqlServer CDC 实时同步数据到 Elasticsearch
elasticsearch·sqlserver·flink
阿里云大数据AI技术1 天前
阿里云 Elasticsearch 的 AI 革新:高性能、低成本、智能化的搜索新纪元
人工智能·elasticsearch·阿里云
w***4241 天前
Springboot中使用Elasticsearch(部署+使用+讲解 最完整)
spring boot·elasticsearch·jenkins