使用 R 处理系统数据?

使用 R 处理系统数据?

我经常听到人们称赞 R 语言用于数据统计分析,但看起来学习难度很高。我想知道是否有人使用 R 来处理有关系统性能和可扩展性的数据,以便比监控系统的基本时间序列更深入地了解行为。作为系统管理员,R 能为您带来什么价值?

答案1

我们已经将 R 视为来自多个性能测试工具的数据的通用分析和报告后端,但不幸的是,我们没有时间实施 R 来完成这项任务,因为我们太忙于性能测试服务器……没有足够的停机时间。

以下是我从性能测试分析角度对 R 的看法

  • 我们需要关联性能测试涉及的数十台主机上的响应时间和系统监视器数据。使用 R 使我们能够从多个不同的数据源以多种格式导入数据,以形成综合分析集
  • 对于测试,我们需要可重复性,否则我们所做的就是“实验”而不是“测试”。R 将帮助我们根据样本数量更好地了解数据集的质量,并让我们更好地了解当我们连续运行测试以检查一致性时,我们的测试在统计上有多接近。
  • 所有开源性能测试工具的薄弱环节是分析和将响应时间事件的增加与其他系统指标的增加或下降相关联的能力。R 应该允许我们在开源测试工具上提供与当今最好的商业工具相同的分析能力,对于商业工具,它应该允许我们更深入地了解样本集的性质,我们可以计算样本频率的曲线下面积,并与最佳曲线(标准差较低的钟形曲线的一半)进行比较,得到一个增量。我们将使用这个增量来指导我们向开发人员提供反馈,以确定在哪里花费时间和精力进行修复
  • 与通常写为 SLA 的强大性能要求相比,市场上的所有工具都很差,即“在 Z 的负载下,x,y% 的时间”的响应时间。R 将使我们能够更好地报告要求/SLA 目标,特别是在可能存在基于负载的移动 SLA 的情况下。
  • 对于技术基准测试,R 可以让我们更好地将当前和之前的测试输出与不同的版本进行比较,从而发现从一个测试到下一个测试在性能上存在显著的偏差,并向开发人员报告

在测试服务器分析方面,我们今天使用了测试期间收集的监控指标、使用 Microsoft logparser 进行日志分析以及基于 LaTeX/PSTRICKS 的报告引擎(可输出 PDF)。使用 R,我们期望转向更结构化的基于规则的结果分析,我们应该能够实现高度自动化,而今天我们需要在分析方面进行大量的人工干预,才能目测结果并格式化输出。

答案2

R 是一种编程语言,与其他语言一样,有优点也有缺点。优点在于所实施的统计方法的深度 - 例如,如果您想将系统负载拟合到广义自回归条件异方差(这不是我编造的)时间序列模型,您可以这样做。Python 或 Perl 中可能存在这种实现,但我怀疑它是否被广泛使用或测试。

对我来说,它的弱点是编程语言本身——有些地方相当不规则和古怪。充满了陷阱。如果你以前从未使用过编程语言,你可能会喜欢它,如果你是任何当前语言(Python、Perl、C(++)、VB?)的熟练程序员,你可能会讨厌它。

如果您最喜欢的语言中存在统计技术和图形,那么我会选择它。如果您可以用您最喜欢的语言轻松实现它们,我会考虑这样做。如果您想要其他编程语言中不存在的尖端统计数据,请使用 R。

相关内容