我的版本的Influxdb是0.11。想象一下这种情况,我有一个“cpu”测量,并希望对其进行下采样。更具体地说,我想对它进行两次下采样,分组10和30分钟。更重要的是,将这些新时间序列存储在一个测量中(比如cpu_aggregated)会更好。为此我需要引入新标签“period”。我的新时间序列应该具有此标记的不同值(10和30)。是否可以在Influxdb中实现这样的模式?
答案 0 :(得分:2)
不幸的是,目前还不可能。因此,为了实现这样的场景,应该将下采样周期编码为测量名称:
SELECT SUM(count) INTO cpu_aggregated_10 FROM cpu WHERE time < now() GROUP BY time(10m)
SELECT SUM(count) INTO cpu_aggregated_30 FROM cpu WHERE time < now() GROUP BY time(30m)
https://groups.google.com/forum/#!topic/influxdb/Q47ly6gxybg
答案 1 :(得分:0)
完全有可能。
period
代码的每个可能值都需要Continuous Query。
如果您的数据定期进入,您可能需要考虑将下采样用于10分钟分组,然后发出一个分组30分钟的查询以获得您要查找的结果(而不是存储两次数据量)。您还需要保留政策才能使旧数据过期。
作为使用连续查询的替代方法,您可能需要考虑使用Kapacitor对数据进行缩减采样。使用Kapacitor还可以在下采样时执行更复杂的操作。