rrdtool 是不是也适合做数据分析?
Is rrdtool also suitable for data analysis?
我使用 rrdtool 来存储带宽、cpu 负载和温度指标并很好地绘制它们。
但我想对存储的数据进行一些分析,即将其重新采样到分钟边界(我每 5 秒采样一次),然后使用此数据查看某个设备是否开始消耗某种类型的带宽类别(游戏或视频)并在发生这种情况时触发脚本。每个设备的每个类别本身就是一个 rdd 文件。这将需要一些其他语言,如 Python 与存储的数据交互,即每分钟轮询一次(重新采样到分钟)rdd 文件并检查是否满足条件。
这在 SQL 中很简单,只需在 MongoDB 中执行 SELECT 或 find/aggregate,但我如何在 rrdtool 中执行此操作?
rrdtool 是否也设计用于执行此操作,或者主要用于绘图?
我非常喜欢它存储文件的紧凑性。
您可以使用 graphv 函数中的 PRINT 命令从 rrd 数据库中获取预处理数据,或者您可以使用 xport 函数导出将进入图形的数据。两者都允许您对数据重新采样并应用 rpn 脚本。
我使用 rrdtool 来存储带宽、cpu 负载和温度指标并很好地绘制它们。
但我想对存储的数据进行一些分析,即将其重新采样到分钟边界(我每 5 秒采样一次),然后使用此数据查看某个设备是否开始消耗某种类型的带宽类别(游戏或视频)并在发生这种情况时触发脚本。每个设备的每个类别本身就是一个 rdd 文件。这将需要一些其他语言,如 Python 与存储的数据交互,即每分钟轮询一次(重新采样到分钟)rdd 文件并检查是否满足条件。
这在 SQL 中很简单,只需在 MongoDB 中执行 SELECT 或 find/aggregate,但我如何在 rrdtool 中执行此操作?
rrdtool 是否也设计用于执行此操作,或者主要用于绘图?
我非常喜欢它存储文件的紧凑性。
您可以使用 graphv 函数中的 PRINT 命令从 rrd 数据库中获取预处理数据,或者您可以使用 xport 函数导出将进入图形的数据。两者都允许您对数据重新采样并应用 rpn 脚本。