我正在分析大型网络上的CPU使用情况。为了做到这一点,我获得了一个大的excel表。它包含batchID(意味着我们专门用CPU来运行该任务)startTime,endTime(意味着我们知道CPU在这段时间内被完全占用)。
根据这些数据,我需要了解在特定实例中运行的批次数。因此,我将使用与x轴的聊天时间和y轴是每个时间点运行的批次计数。
整个文件在两天的数据中超过15000行。这是其中的一小部分。
BATCHID startTime endTime
560062 13/10/2011 11:59:23 13/10/2011 11:59:26
560061 13/10/2011 08:59:18 13/10/2011 08:59:21
560060 13/10/2011 05:59:21 13/10/2011 05:59:30
560059 13/10/2011 02:59:34 13/10/2011 02:59:43
560058 13/10/2011 01:57:24 13/10/2011 01:57:29
560057 13/10/2011 01:57:24 13/10/2011 01:57:28
560056 12/10/2011 23:59:19 12/10/2011 23:59:28
560055 12/10/2011 20:59:21 12/10/2011 20:59:30
560054 12/10/2011 18:02:13 12/10/2011 18:02:22
560053 12/10/2011 18:02:13 12/10/2011 18:02:21
560052 12/10/2011 18:02:12 12/10/2011 18:02:21
560051 12/10/2011 18:02:07 12/10/2011 18:02:16
560050 12/10/2011 18:02:03 12/10/2011 18:02:11
560049 12/10/2011 18:02:10 12/10/2011 18:02:19
560048 12/10/2011 18:02:11 12/10/2011 18:02:16
560047 12/10/2011 18:02:09 12/10/2011 18:02:13
560046 12/10/2011 18:02:04 12/10/2011 18:02:13
560045 12/10/2011 18:02:12 12/10/2011 18:02:21
需求量的:
我怀疑Excel 2003可以做得很好,因为列数限制为256个。
我欢迎任何关于如何在Octave / MATLAB,ORACLE PL / SQL,R或Bash脚本中有效地执行此任务的建议。
克服Excel大小限制以分析大型网络使用
答案 0 :(得分:0)
我会将数据更改为:
BATCHID START/END TIME NUM_TASKS
560062 START 13/10/2011 11:59:23 1
560062 STOP 13/10/2011 11:59:26 0
按TIME排序并计算NUM_TASKS作为START的前一行+1值和STOP的-1。然后,您可以绘制TIME与NUM_TASKS的关系,并在图形本身中执行任何平滑或间隔。