时间序列数据可视化与前端工具选择
1. 数据可视化前的准备与前端工具概述
在完成数据收集和存储后,就可以着手进行数据的可视化工作,也就是绘制图表。和数据轮询与存储引擎一样,前端工具也需要具备灵活性。理想的前端工具应能绘制任意 RRD(Round Robin Database)中的任意指标组合,同时不丢失 RRDTool 的任何功能,并且无需在 Web 界面中大量点击来进行配置。
查看前端工具(可访问 www.rrdworld.com)时会发现,它们存在和数据收集与轮询引擎类似的问题。大多数绘图前端工具功能过于繁杂或过于复杂,导致灵活性不足。
2. RRDTool 绘图模式
在选择绘图前端工具之前,需要了解一下 RRDTool 的绘图模式。RRDTool 除了创建和更新功能外,还有专门用于从 RRD 中存储的数据绘制图表的模式。有人戏称 RRDTool 的绘图模式是“一图胜千言”这句古老格言的存在证明,因为它是该工具集中最复杂和令人困惑的部分,有大量选项可用于指定图表的各种属性,从高度和宽度到背景与前景颜色等。
虽然绘图命令理论上可以写成一行,但通常会跨越 15 到 20 行,看起来更像 shell 脚本。一个好的前端工具可以让复杂的语法变得无关紧要,但为了充分利用前端工具,需要快速回顾一些重要概念,包括 DEFs 和 CDEFs,并熟悉逆波兰表示法(RPN)。
2.1 DEFs(定义)
DEFs 是绘图模式的核心定义,用于告诉 RRDTool 要绘制什么。一个 DEF 由 RRD 的文件名、该 RRD 中的一个数据源(DS)以及该 DS 的合并函数组成。一个 DEF 只引用一个数据源。在绘图命令中可以指定任意