You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MySQL+Grafana如何计算$__interval间隔内条目数替换LAG固定偏移量

机器网络使用量计算问题

我需要计算各机器的网络数据使用量,所有机器每分钟上报一次累计使用量数据。我目前编写的查询可以计算最新条目与约24小时前条目的差值,但随着系统数量变化,该计算的偏移基准也会变动。

现有查询代码如下:

SELECT
  time AS "time",
  machine_id,
  ABS ( utilisation - LAG(utilisation,2160) OVER ( PARTITION BY machine_id ORDER BY time)) as DataUsed
FROM hardware
WHERE
  $__unixEpochFilter(time) AND
  component = 'network'
ORDER BY time 

我需要将LAG函数的偏移量参数2160替换为Grafana仪表盘定义的$__interval时间间隔内的条目总数。我尝试编写了如下查询统计对应间隔内的条目数:

SELECT
  $__unixEpochGroupAlias(time,$__interval),
  count(utilisation) AS "count"
FROM hardware
WHERE
  $__unixEpochFilter(time) AND
  component = 'network'
GROUP BY 1
ORDER BY $__unixEpochGroup(time,$__interval)

但上述查询并未按照我的预期返回对应时间跨度内的条目数量,我目前无法找到问题所在。

另外我测试的两个查询如下:

查询A

SELECT
  time AS "time",
  machine_id,
  utilisation - LAG(utilisation,88) OVER ( PARTITION BY machine_id ORDER BY time) as DataUsed
FROM hardware
WHERE
  $__unixEpochFilter(time) AND
  component = 'network'
ORDER BY time 

查询B

SELECT
  machine_id,
  count(utilisation) AS N
FROM hardware
WHERE
  $__unixEpochFilter(time) AND
  component = "network"
GROUP BY machine_id

内容的提问来源于stack exchange,提问作者etherion

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 15:06:00