【发布时间】:2021-03-29 15:31:54
【问题描述】:
查看 InfluxDb 2.0 最佳实践中的“错误 3”: https://www.influxdata.com/blog/data-layout-and-schema-design-best-practices-for-influxdb/
错误 3:将 id(例如 eventid、orderid 或 userid)设置为标签。如果标签值没有作用域,这是另一个可能导致无限基数的示例。
解决方案 3:将这些指标设为字段。”
这一切都是公平和花哨的,但是我如何得出结果呢?它似乎没有在任何地方描述。所有示例都显示按标签过滤,而不是按字段过滤。因此,如果我正在记录“SensorId、Temp、Humidity”并且这些都是字段,我如何获取 SensorId 97 的 Temp 图表?
为了在 Flux 中按字段过滤,您需要编写:
from(bucket: "TestBucket")
|> range(start: v.timeRangeStart, stop: v.timeRangeStop)
|> filter(fn: (r) => r["_measurement"] == "sensor" and r["_field"] == "sensorid" and r["_value"] == 97)
但现在我只停留在 sensorid 值上。温度和嗡嗡声值已经消失。我正在尝试围绕 Flux 进行思考,但考虑到您将数据作为记录写入,而这就是您在设计解决方案时的想法,这很难。但是在 Flux 中,当您尝试缩小结果集时,这些列似乎突然消失了。
【问题讨论】:
标签: influxdb