我有一个来自恒温器的influxdb数据集,其数据模式为字符串格式(“关闭”,“热水”或“集中供热”)
我想在grafana中绘制两条线,一条线用于“热水”,另一条线用于“中央供暖”。这些集合的可能值为“ 1”和“ 0”。
(目前)在influxdb(https://github.com/influxdata/influxdb/issues/8627)中似乎无法做到这一点,所以我希望可以在grafana中进行此转换。
有没有办法在grafana中进行这种转换?
数据集:
name: boiler indicator
time value
---- -----
1539706320366630912 off
1539706380315879936 off
1539706440368925184 off
1539706500364559872 off
1539706560358993152 off
1539706620359011840 off
1539706680363074048 off
1539706740348193024 hot water
1539706800366929920 off
1539706860366509056 off
所需的热水结果:
name: hot water
time value
---- -----
1539706320366630912 0
1539706380315879936 0
1539706440368925184 0
1539706500364559872 0
1539706560358993152 0
1539706620359011840 0
1539706680363074048 0
1539706740348193024 1
1539706800366929920 0
1539706860366509056 0
答案 0 :(得分:1)
否,Grafana仅显示TSDB提供的数据。您的InfluxDB结构的变通办法;尝试:
SELECT count(*)
FROM "hot water"
WHERE "value"='hot water' AND time>NOW()-10m
GROUP BY time(1m) fill(0)
这是无效的,因为按字段过滤需要对表进行全面扫描。对于大型数据集来说可能会很慢。
如果您想进行有效的查询并简化Grafana可视化,则应更改InfluxDB结构->使用数字字段值+最终使用字符串标签。