sasgrid平台sas程序执行慢

Posted

技术标签:

【中文标题】sasgrid平台sas程序执行慢【英文标题】:Slow execution of sas program in sasgrid platform 【发布时间】:2013-12-07 11:03:05 【问题描述】:

我使用 Unix sas 使用 sasplex 平台执行 sas 代码。总是需要将大量记录上传到 netezza 数据库。我使用以下脚本连接/上传数据到 netezza-

Connect to netezza (user=s password=m server=192.168.54.32 database=test connection=global)

sasplex platform(sasplex) 中上传5gb 数据几乎不需要5mins

但是,最近从sasplex to sasgrid 平台移动了相同的netezza 字符串。但是现在sas 程序的执行时间非常低。上传到上述数据(sasgrid)需要5 小时。我还尝试在字符串中包含insert buff time,但影响非常小。

能否请您帮助我们如何加快 sas 程序的执行时间。

问题只有 database.rest 是一样的。

【问题讨论】:

这里可能会发生很多事情。诸如不同系统选项到连接性差异之类的事情。解决此问题的最佳方法是致电(或发送电子邮件)SAS 技术支持。 【参考方案1】:

假设您已安装 SAS/ACCESS for Relational Databases,将数据上传到 Netezza 的最快方法是使用选项 BULKLOAD=YES 进行 proc append - 请参阅:

http://support.sas.com/documentation/cdl/en/acreldb/63647/html/default/viewer.htm#a003181092.htm

示例语法:

libname sasflt 'SAS-data-library';
libname net_air netezza user=louis pwd=fromage
        server=air2 database=flights;

proc sql;
create table net_air.flights98
       (bulkload=YES bl_options='logdir "c:\temp\netlogs"') 
        as select * from sasflt.flt98;

proc append base=net_air.allflights
 (BULKLOAD=YES
  BL_DATAFILE='/tmp/fltdata.dat'
  BL_USE_PIPE=NO
  BL_DELETE_DATAFILE=NO)
data=sasflt.flt98;
run;

【讨论】:

以上是关于sasgrid平台sas程序执行慢的主要内容,如果未能解决你的问题,请参考以下文章

SAS 程序冷知识——如何在启动sas程序时自动执行一些宏?

求教:SAS安装到100% 假死机解决方法

SAS:使用热键执行 SAS 代码

关于sas宏的一点想法

SAS 操作数据集的观测

面试题