作者:来自 Elastic Edward Lewis
在 Elastic Streams 中与保留策略和数据层级一起配置降采样,并提供实时预览和验证。不再需要编辑 ILM 或生命周期 JSON。
从 Elastic 9.4(正式发布版)开始,Streams 允许你直接在 Retention 选项卡中查看和配置降采样,同时查看保留周期、数据层级以及摄取上下文。打开一个 stream,即可查看它如何随时间演变,并在同一个位置完成修改。
Elasticsearch 已经通过 ILM 策略与数据流生命周期 支持降采样功能一段时间了。但配置过程意味着你需要离开当前查看的 stream,找到对应的 policy 或 lifecycle 定义,编辑 JSON,并希望配置的时间间隔有效。现在,这种来回切换已经不再需要。
基于 ILM 的 Streams
ILM 将降采样与阶段(phase)绑定。每个阶段(hot、warm、cold)都可以包含一个带有 fixed_interval 的降采样操作。现在,Streams 会在数据生命周期时间线上展示这些操作。点击某个阶段即可打开侧边弹窗(flyout),设置降采样间隔,并在保存之前实时查看时间线更新效果。
下面是相同策略对应的 JSON。这就是当你使用侧边弹窗(flyout)时,Streams 实际读取和写入的内容:
`
1. {
2. "phases": {
3. "hot": {
4. "min_age": "0ms",
5. "actions": {
6. "rollover": { "max_age": "1d" },
7. "downsample": {
8. "fixed_interval": "5m",
9. "wait_timeout": "1d"
10. }
11. }
12. },
13. "warm": {
14. "min_age": "2d",
15. "actions": {}
16. },
17. "cold": {
18. "min_age": "4d",
19. "actions": {
20. "downsample": {
21. "fixed_interval": "10m",
22. "wait_timeout": "1d"
23. }
24. }
25. },
26. "frozen": {
27. "min_age": "8d",
28. "actions": {
29. "searchable_snapshot": {
30. "snapshot_repository": "found-snapshots",
31. "force_merge_index": true
32. }
33. }
34. },
35. "delete": {
36. "min_age": "30d",
37. "actions": {
38. "delete": {
39. "delete_searchable_snapshot": true
40. }
41. }
42. }
43. }
44. }
`AI写代码
ILM 策略通常会被多个 stream 共享使用。如果你编辑了一个正在其他地方使用的策略,Streams 会发出警告,并提供 Save as new policy(另存为新策略) 选项,让你可以进行分支(fork),而不是直接修改原始策略。
数据流生命周期(DLM)streams
数据流 生命周期采用不同的方法:与其在每个阶段只设置一个降采样操作,它允许你定义一系列步骤(最多 10 个),每一步都包含一个 after 延迟和一个 fixed_interval。Streams 会将其以“视觉阶梯(visual ladder)”的形式展示出来,让你可以一步一步构建配置。
这是同一个配置,但以 API 调用的形式表示。UI 中的每一个步骤都会映射为 downsampling 数组中的一个对象:
`
1. {
2. "data_retention": "14d",
3. "downsampling": [
4. { "after": "1d", "fixed_interval": "5m" },
5. { "after": "3d", "fixed_interval": "1h" },
6. { "after": "7d", "fixed_interval": "4h" }
7. ]
8. }
`AI写代码
开始使用
-
在 Kibana 中打开 Streams,并选择一个由 时间序列数据流(TSDS)支持的 stream。
-
进入 Retention(保留) 选项卡。数据生命周期时间线会显示当前的降采样配置(如果存在)。
-
对于 ILM streams,点击时间线中的某个 phase,会打开 flyout,并可在其中配置降采样间隔。
-
对于 DLM streams,可以在 lifecycle 视图中直接添加或编辑降采样步骤。
了解更多
本文章中描述的任何功能或发布时间均由 Elastic 自行决定。任何当前不可用的功能或能力,可能不会按计划交付,甚至可能不提供。