转移到64位SAS

时间:2015-06-24 09:58:40

标签: sas

我每天都有数百个SAS程序按计划运行。

如果我将SAS升级到64位,如何防止由于迁移引起的错误(可能是语法/过程要求从32位更改为64位)?

2 个答案:

答案 0 :(得分:2)

从可用性角度看32位和64位SAS之间的主要区别:

  • 导入Excel(和Access)文件。如果您使用的是Windows,则SAS的位数需要与Microsoft Office的位数相匹配才能使用DBMS=EXCELlibname excel。有关其他详细信息,请参阅this paper。有一些解决方法,包括PC文件服务器或使用DBMS=XLSX,具体取决于您的版本和操作系统。
  • 格式目录。您的格式目录在32位和64位SAS之间不兼容,就像它们在Unix和Windows之间不兼容一样。在我看来,最好的办法是使用CNTLOUT proc format选项将它们导出到数据集,然后使用CNTLIN选项将它们导入64位。如果您的环境中有混合版本(某些人有32个,有些人有64个),您将要么维护两个目录,要么让每个人只与CNTLOUT导出的数据集交互。这也适用于存储/编译的宏目录。
  • 数据集版本。 32位和64位SAS可以读取彼此的数据集,但代价是访问时间较慢;根据我的经验,它不是坏,但如果您有大型数据集,您将需要使用proc migrate转换它们,或者只是读取它们并以64位重写一次。 / LI>

Chris Hemedinger在他的博文on The SAS Dummy中提到了同样的三个问题,并提供了一些其他细节。

一般来说,数据步骤和过程的语法在两个版本之间没有什么不同,虽然当然有更多的内存,一些在32位中不切实际的技术在64位中可用(大型哈希表,一些可以非常高效地工作的PROC)有大量的RAM)。

答案 1 :(得分:0)

32位和64位之间没有任何语法差异。您应该转换数据,请查看proc migrate