Performance 哪些因素对SAS数据集性能的影响更大-观察次数或变量数量?

Performance 哪些因素对SAS数据集性能的影响更大-观察次数或变量数量?,performance,dataset,sas,Performance,Dataset,Sas,在SAS中使用不同的数据集一两个月后,在我看来,一个数据集的变量越多,在该数据集上运行PROC和其他操作所需的时间就越长。然而,如果我有5个变量,但有100万个观察值,那么性能不会受到太多影响 虽然我对观察结果或变量是否会影响性能感兴趣,但我也想知道在查看SAS性能时是否还缺少其他因素 谢谢 对于相同大小的数据集(行*列),我认为变量较多的数据集通常会比较慢。我尝试创建两个数据集,一行10000列,一列10000行。变量越多,占用的内存和时间就越多 options fullstimer; dat

在SAS中使用不同的数据集一两个月后,在我看来,一个数据集的变量越多,在该数据集上运行PROC和其他操作所需的时间就越长。然而,如果我有5个变量,但有100万个观察值,那么性能不会受到太多影响

虽然我对观察结果或变量是否会影响性能感兴趣,但我也想知道在查看SAS性能时是否还缺少其他因素


谢谢

对于相同大小的数据集(行*列),我认为变量较多的数据集通常会比较慢。我尝试创建两个数据集,一行10000列,一列10000行。变量越多,占用的内存和时间就越多

options fullstimer;
data a;
    retain var1-var10000 1;
run;
data b(drop=i);
    do i=1 to 10000;
    var1=i;
    output;
    end;
run;
在日志上

31   options fullstimer;
32   data a;
33       retain var1-var10000 1;
34   run;

NOTE: The data set WORK.A has 1 observations and 10000 variables.
NOTE: DATA statement used (Total process time):
      real time           0.23 seconds
      user cpu time       0.20 seconds
      system cpu time     0.03 seconds
      Memory                            5382k
      OS Memory                         14208k
      Timestamp            10/14/2009  2:03:57 PM


35   data b(drop=i);
36       do i=1 to 10000;
37       var1=i;
38       output;
39       end;
40   run;

NOTE: The data set WORK.B has 10000 observations and 1 variables.
NOTE: DATA statement used (Total process time):
      real time           0.01 seconds
      user cpu time       0.00 seconds
      system cpu time     0.01 seconds
      Memory                            173k
      OS Memory                         12144k
      Timestamp            10/14/2009  2:03:57 PM
你也应该退房,然后离开。如果你必须多次访问一个数据集,你也可以考虑将整个数据集存储在内存中。

< P>我不能很清楚地解释(而且我正在做一个有根据的猜测),但我想它与一些因素有关,包括一个完整的记录被读取到PDV中,这意味着内存中有更多的数据和许多变量

使用压缩数据集进行一些测量可能是值得的,因为I/O通常是瓶颈

SAS数据集选项:

data foo(compress=yes);
...
run;

SASFILE听起来很有用,但是我的数据集对于我所在的机器来说太大了(~1.8gb,并且当我尝试对其进行SASFILE时,会出现持续的内存不足错误)。谢谢你做这些快速测试!谢谢,我想我今天要试试压缩。我正在运行的机器上的HD在运行我当前使用的数百条PROC REPORT语句时会不断出现问题,因此我认为这肯定是I/O和compress可能会有所帮助!压缩对我的大数据集有很大帮助。谢谢除了单个数据集之外,还可以将压缩设置为全局选项或不同粒度级别的库选项。