【发布时间】:2020-01-29 05:16:51
【问题描述】:
下面是我提出这个问题的场景。
要求: 在 influxDb 中预先聚合时间序列数据,粒度为设备中每个传感器的秒、分钟、小时、天和周。
当前提案: 当设备载入时,为设备的每个传感器创建五个连续查询(每个粒度级别一个,即秒、分钟...),保留策略与原始时间序列数据的保留策略不同。
当前提案的限制: 随着设备/传感器(时间序列数据源)数量的增加,influx 会因过多的连续查询(不推荐)而变得臃肿,并且会对 influxDb 实例本身造成影响。
问题: 为了避免上述问题,是否有可能在同一源测量(即原始时间序列测量)上创建连续查询,但是可以使用引入的新标签在测量中区分聚合,以区分连续查询的结果与原始的结果测量中的时间序列数据。
示例:
CREATE CONTINUOUS QUERY "strain_seconds" ON "database"
RESAMPLE EVERY 5s FOR 1m
BEGIN
SELECT MEAN("strain_top") AS "STRAIN_TOP_MEAN" INTO "database"."raw"."strain" FROM "database"."raw"."strain" GROUP BY time(1s),*
END
【问题讨论】: