Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用SAS在Oracle server上运行统计分析_Oracle_Odbc_Sas - Fatal编程技术网

如何使用SAS在Oracle server上运行统计分析

如何使用SAS在Oracle server上运行统计分析,oracle,odbc,sas,Oracle,Odbc,Sas,为了利用Oracle服务器大得多的磁盘空间和RAM,是否可以使用ODBC接口在存储在服务器上的数据集上运行SAS过程(如proc glimmix或proc NLMIX) 或者,我是否仅限于通过ODBC将数据集提取到我的PC上,而不是在数据驻留在服务器上时使用SAS实际操作或分析数据?一天结束时,假设您正在做任何复杂的事情(如GLIMMIX),一些工作必须由SAS在您的PC上完成。SAS(特别是9.3或更新版本)在使数据库尽可能多地工作方面非常聪明;例如,即使某些PROC手段也可能在数据库端完全执

为了利用Oracle服务器大得多的磁盘空间和RAM,是否可以使用ODBC接口在存储在服务器上的数据集上运行SAS过程(如proc glimmix或proc NLMIX)


或者,我是否仅限于通过ODBC将数据集提取到我的PC上,而不是在数据驻留在服务器上时使用SAS实际操作或分析数据?

一天结束时,假设您正在做任何复杂的事情(如GLIMMIX),一些工作必须由SAS在您的PC上完成。SAS(特别是9.3或更新版本)在使数据库尽可能多地工作方面非常聪明;例如,即使某些PROC手段也可能在数据库端完全执行

然而,只有当该过程无需采取特殊措施即可转化为数据库功能时,这才是正确的。SAS不太可能在数据库端执行回归,因为这不是本机Oracle。在某种程度上,数据必须跨越(可能是有限的)带宽

您当然可以做很多事情来限制您在SAS中必须做的事情。任何预汇总都可以在Oracle中完成;在实际
PROC GLIMMIX
之前的任何其他数据准备工作都可能在Oracle中完成。通过简单地使用libname连接并执行以下操作,您当然可以尝试一下

proc glimmix data=oracle.table ... options ... ; 
run;
看看发生了什么——也许它会让你们,甚至是我,惊讶于它在数据库中处理了多少数据。它可能会把它带到本地,也可能不会


你可能想考虑用一个简化的版本来询问一个问题,包括示例数据,简单地询问是否有人对提高性能有任何想法。我们可以做很多调整,也许我们中的一些人可以提供帮助

谢谢乔,这很有帮助。您知道R中的新RODM包(用于Oracle Database 11g Enterprise Edition)是否与SAS ODBC的操作方式相同吗?我正在考虑的另一个解决方案是,掸掉我的编程技能&线性代数课本,用SQL编写代码,在Oracle中进行回归分析。我对RODM一无所知,所以不知道。ODBC不是SAS技术,它是SAS能够使用的数据库连接技术—R也可以。你可以买一台SAS服务器,甚至买一台更好的SAS台式机——我不知道你在处理什么样的数据,但现在16GB或32GB的RAM非常容易获得,SSD也是如此,这两种设备都可以显著提高台式机的性能。