timescaledb 中的数据保留

Data retention in timescaledb

试图让我的头脑围绕 timescaledb,但我的 google-fu 让我失望了。很可能是因为我没有搜索正确的术语。

使用 RRD 工具,可以将旧数据存储为平均值,从而减少存储的数据量。

我似乎无法找到如何使用 timescaledb 执行此操作。我想要 90 天的 5 分钟解决方案,但在那之后,保留所有这些数据点毫无意义,我想在几年内将其减少到 30 或 60 分钟的平均值,然后可能是日平均值。

这是我可以在数据库本身中设置的东西,还是我必须在管理工作中实施的东西?

我们半年前有过完全相同的问题。

术语 "Data Retention" 也被 timescaledb 团队使用。目前使用 drop_chunks 政策实施(参见 their doc here)。这是一项企业功能,但恕我直言,(还)没有它 could/should 有用(而且它肯定不能满足您的需求)。

让我解释一下:可能对数据进行下采样的最简单方法是连续聚合 (their doc here)。您可以很容易地将几乎任何数值聚合到您想要的任何分辨率。但是,连续聚合也会受到 drop_chunks 删除的影响。你的数据不见了。

一种解决方法是改为创建其他 Hypertable。然后,创建您自己的后台工作人员,将数据从原始的高分辨率 table 复制到这些新的低分辨率 Hypertable。 对于内务处理,请使用 Data Retention Enterprise 功能或创建您自己的后台工作人员。