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

如何在KQL中不使用Summarize绘制预平均时间序列数据?

解决预平均时间序列的无额外分箱可视化问题

你的核心需求是避免Kusto自动对预平均的时间数据做二次分箱聚合,直接用原始时间点绘制两个速率序列,解决方案如下:

关键修改:替换渲染类型并确保排序

Kusto的timechart会默认对时间轴做分箱并聚合数据,这会破坏你已预计算好的平均值。改用linechart即可跳过自动分箱,直接使用数据中的每个时间点,同时要确保数据按时间排序保证图表顺序正确。

修改后的完整代码:

// 关联表并准备数据
let AnalysisTbl = InputRateAnalysisTbl
    | join kind=inner ProcessingRateAnalysisTbl on applicationId_s, TimeGenerated
    | project inputRate, processingRate, applicationId_s, TimeGenerated
    | sort by TimeGenerated asc; // 按时间升序排序,保证图表时间顺序正确
// 绘制折线图,无额外分箱
AnalysisTbl
| render linechart with (
    xcolumn=TimeGenerated,
    ycolumns=inputRate, processingRate,
    title="输入速率与处理速率趋势",
    legend=visible
)

特殊情况处理

如果你的数据中存在同一TimeGenerated对应多条重复记录(理论上预平均后不会出现,但可以提前处理避免异常),可以通过summarize保留原始预计算值:

let AnalysisTbl = InputRateAnalysisTbl
    | join kind=inner ProcessingRateAnalysisTbl on applicationId_s, TimeGenerated
    | project inputRate, processingRate, applicationId_s, TimeGenerated
    // 按时间和应用ID去重,保留原始预平均数值
    | summarize inputRate=any(inputRate), processingRate=any(processingRate) by applicationId_s, TimeGenerated
    | sort by TimeGenerated asc;
AnalysisTbl
| render linechart with (
    xcolumn=TimeGenerated,
    ycolumns=inputRate, processingRate,
    title="输入速率与处理速率趋势",
    legend=visible
)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 05:03:15