我正在使用InfluxDb对许多发电厂进行测井测量。目前,我正在使用一个与power_plant作为标记的度量,以及用于测量的字段。最好是对每个发电厂进行不同的测量,还是只使用标签。我担心在这个测量中什么时候会有or或更多的数据?
目前我有这样的结构(所有发电厂的数据都在一次测量中,使用标签、动力装置和设备来查询数据)。
private static $invertersMeasurement = [
'value' => NULL,
'tags' => [
'power_plant' => NULL,
'device' => NULL,
'logger_ip' => NULL,
],
'fields' => [
'type' => NULL,
'e_total' => NULL,
'status' => NULL,
'error' => NULL,
'temp' => NULL,
'pac' => NULL,
'pdc1' => NULL,
'udc1' => NULL,
'idc1' => NULL,
'pdc2' => NULL,
'udc2' => NULL,
'idc2' => NULL,
'pdc3' => NULL,
'udc3' => NULL,
'idc3' => NULL,
'pdc4' => NULL,
'udc4' => NULL,
'idc4' => NULL
],
'time' => NULL
];
在不同的测量中,删除发电厂的标签并存储每个发电厂的数据更好吗?
发布于 2019-01-08 01:59:35
Q:使用更多的度量更好吗?
A:在一个度量中拥有所有数据的优点是,当点都放在一个地方时,执行数据聚合就容易多了。
但是,这是输入数据库v1.7.0
之前的一个问题,在此之前,根本不可能进行交叉测量连接。这意味着您不能在来自不同度量的数据点之间进行数据聚合。
注意:到目前为止,只有flux
,新的2.0内流查询语言将允许您进行交叉测量连接。
在大多数情况下,如果您通过将正确类型的点数据存储到适当的度量中来正确地设计您的方案,那么您就不必进行交叉测量连接。
看看你的字段,我可以看到一些数据类型,比如温度。也许可以把它们放进另一种测量方法?这是为了让开发人员,特别是新雇的开发人员,能够更容易地发现数据?
这也使你的测量更有条理。当一个温度数据以一分钟间隔输入,而您的一些字段间隔为2分钟时,单个测量数据集可能看起来很混乱。这意味着,在某些情况下,特定的数据行只会有温度场,而不具有其他数据行。
你需要处理这类边缘案件。你做不做linear
插值?
不确定那些ucp idc 1、2、3和4字段是什么。如果它们是以某种方式联系在一起的,那么它们应该单独保存在一个度量中。从某种意义上说,通过组合某些字段(如ucp1和ucp2 ),您可以计算出数据是否有意义,从而告诉您一些事情。例如,高温值+低ucp值意味着机器故障?
我会在正确的度量中对数据进行分组,否则实际上不需要在进水数据库中使用measurement
。
发布于 2019-01-07 19:19:38
不,保留标记,因为一些可视化工具(例如Grafana)对标记的支持要比度量+标记过滤更好(如果没有高基数的标记的话)。不管怎样,你的模式在我看来不错。
https://stackoverflow.com/questions/54056411
复制相似问题