代码之家  ›  专栏  ›  技术社区  ›  theDmi

influxdb:对具有相同时间戳的行进行分组

  •  0
  • theDmi  · 技术社区  · 6 年前

    假设数据库具有以下数据记录:

    2018-04-12T00:00:00Z value=1000 [series=distance]
    2018-04-12T00:00:00Z value=10   [series=signal_quality]
    2018-04-12T00:01:00Z value=1100 [series=distance]
    2018-04-12T00:01:00Z value=0    [series=signal_quality]
    

    有一个字段名为 value . 方括号表示标签(省略其他标签)。如您所见,数据捕获在 不同的 数据记录,而不是在 相同的 记录。

    基于上述结构,我如何查询距离的时间序列,并根据信号质量进行过滤? 目标是在信号质量高于固定阈值(例如5)时,仅返回距离数据点。

    1 回复  |  直到 6 年前
        1
  •  2
  •   Yuri G    6 年前

    “考虑到上述结构”,在平原冲积物中没有办法做到这一点。

    请记住,influx不是一个关系数据库,它是不同的,尽管查询语言看起来很熟悉。

    再次给出 该结构 -如前所述,您可以继续使用Kapacitor。

    但我强烈建议您重新考虑结构,如果可能的话,如果您能够控制收集度量的方式。

    如果这不是一个选择-方法如下:在Kapacitor中旋转一个简单的工作,它将根据时间将两个点连接成一个点( check this out for how ,然后将其放入新的测量中。

    数据点如下所示:

    DistanceQualityTogether,tag1=if,tag2=you,tag2=need,tag4=em distance=1000,signal_quality=10 2018-04-12T00:00:00Z

    其他人对这样的测量结果一无所知。

    但是,同样,如果您可以这样配置您的度量标准,那么最好这样做。