克服Excel大小限制,分析大型网络使用情况



我正在分析一个大型网络上的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

要求:

  1. 我们需要一个数组来包含时间片数据。可以是每1分钟或每5分钟。如果我们需要以每1分钟的间隔分析两天,那么我们可能需要2880个数据点用于x轴。
  2. 因为在任何情况下都可能有许多作业在运行。我们需要设置一个机制来计算在该时间片上运行的批的数量。

我怀疑Excel 2003可以做得很好,因为列数限制在256。

我欢迎任何关于如何在Octave/MATLAB, ORACLE PL/SQL, R或Bash Script中有效地执行此任务的建议。

克服Excel大小限制分析大型网络使用

我会将数据更改为如下内容:

BATCHID START/END  TIME                NUM_TASKS
560062  START      13/10/2011 11:59:23    1
560062  STOP       13/10/2011 11:59:26    0

按时间排序并计算NUM_TASKS作为前一行的值+1表示开始,-1表示停止。然后,您可以绘制TIME与NUM_TASKS的关系图,并在图本身中执行任何平滑或间隔。

最新更新