2

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

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

我似乎无法找到如何使用 timescaledb 做到这一点。我想要 90 天的 5 分钟分辨率,但在那之后,保留所有这些数据点是没有意义的,我想在几年内将其减少到 30 或 60 分钟的平均值,然后可能是之后的每日平均值。

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

4

1 回答 1

3

半年前我们也有同样的问题。

timescaledb 团队也使用术语“数据保留”。它目前是使用drop_chunks策略实现的(请参阅他们的文档here)。这是一项企业功能,但恕我直言(尚未)尽可能/应该有用(而且它肯定不会满足您的需求)。

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

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

于 2019-10-09T14:32:46.547 回答