我希望我的术语是正确的,但这里是
我需要计算条目之间传输的数据(MB/s)。我有一个时间序列,其中包含作为利用率发送和接收的数据的时间戳和总和。
表利用率有一个称为“network”的组件
Time utilisation
2021-11-19 11:14:13 291815568369
2021-11-19 11:14:53 291820740719
2021-11-19 11:15:33 291826081965
2021-11-19 11:16:13 291831134637因此,为了得到一个准确的答案,我需要知道时间上的差异和使用率上的差异。
使用率= (291820740719 - 291815568369 )/ (11:14:53 -11:14:13)
为了获得上面的表,我使用了以下查询
SELECT
time AS "time",
utilisation
FROM hardware
WHERE
$__unixEpochFilter(time) AND
component = 'network'
ORDER BY time发布于 2021-11-20 13:28:56
这似乎是可行的。其目的是计算数据速率的上行和下行。
SELECT
time AS "time",
( utilisation - LAG(utilisation,1) OVER ( ORDER BY time) ) / ( time - LAG(time,1) OVER ( ORDER BY time) ) time_usage
FROM hardware
WHERE
$__unixEpochFilter(time) AND
component = 'network'
ORDER BY time发布于 2021-11-19 11:00:25
如果您的目标是计算每两个连续行之间的公式,我将使用一个使用游标的存储过程进行计算(您可以在此处阅读:https://dev.mysql.com/doc/refman/8.0/en/cursors.html
然后,在循环中,您将在每次获取的新行和前一行之间进行计算(确保处理第一轮)。
https://stackoverflow.com/questions/70032782
复制相似问题