【问题标题】:Influx DB Schema for array of measurements用于测量数组的 Influxdb Schema
【发布时间】:2021-01-31 10:06:13
【问题描述】:

我被告知没有存储类似测量值的架构,其中包含读取时间序列数据库中的数组索引元数据。

电池组的具体电压读数可以被视为电池组 0-8 和电池组 0-12 中的电池的二维阵列。总共 96 次电压测量。

有一个单一的voltages 存储桶,每个测量都有标签,其中包含索引packIndex 和cellIndex 以及电压测量值,即

insert voltages,packIndex=2,cellIndex=0 value=3.4000

允许对来自同一包装索引的读数进行分组,这将是有益的,但是将索引存储为标签意味着我无法对这些索引执行操作,例如 SELECT voltages WHERE packIndex < 4 以执行诸如查找包装 3 中记录的最小电压到7等

我是否应该将此索引数据包含在字段值中,但这意味着我将无法按特定字段对数据进行分组。

我的问题具体是我应该将数组索引值存储为标签还是字段,还是我缺少另一种选择。

这是一种不常见的情况,还是有任何资源可能有助于解决这个问题?

【问题讨论】:

    标签: database database-design time-series grafana influxdb


    【解决方案1】:

    将索引数据存储为标签最适合您的用例。

    在 InfluxDB 中,所有标签值都存储为字符串。在 InfluxQL 查询中,如果我们需要根据标签值进行过滤,WHERE 子句应该使用正则表达式。即。

    SELECT voltages WHERE packIndex < 4 应该改为

    SELECT voltages WHERE packIndex =~ /[1-3]/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-04
      • 2020-11-01
      • 2023-03-19
      • 2019-03-25
      • 2017-06-16
      • 1970-01-01
      相关资源
      最近更新 更多