楼主: sxlion
10828 30

[原创博文] 怎么配置SAS专用电脑 ?from saslist.net [推广有奖]

11
sxlion 发表于 2011-8-4 10:42:22
nectar 发表于 2011-8-4 09:27
假设我指定了D盘的数据集为file。
libname file 'd:\processing files';
run;
我时刻在提醒自己:千万不要以为自己懂SAS。

我的代码里面用到了USER这个数据库,这个是很特别的数据库 ,独一无二 。

你可以把你的file改成user。 这样的话中间执行的数据都会存到user里面,即我所指定的D盘。

ps:你先用user取代你的work,然后再按照原来的做法做即可。

12
sxlion 发表于 2011-8-4 10:51:57
有兴趣的朋友,可以跑跑这段代码,然后观察下C盘,D盘的空间变化,你会发现很有趣,很好玩的。


libname USER "d:\";

data a;
  do i =1 to 1e17; /*硬盘小的朋友把后面的17改得小一点,否则你懂的*/
  x=ranuni(0);
    y=ranuni(0);
   output;
  end;
  run;

  proc sort; by x y; run;

13
nectar 发表于 2011-8-4 11:08:21
sxlion 发表于 2011-8-4 10:51
有兴趣的朋友,可以跑跑这段代码,然后观察下C盘,D盘的空间变化,你会发现很有趣,很好玩的。
太感谢了。非常感谢,SXLION。谢谢你的善意批评。我很低调的,我知道相对于论坛上的大侠,我的道行很浅的。

14
soporaeternus 发表于 2011-8-4 11:29:14
libname user不改变至少是sql执行时的临时文件地址的,即.sas7butl文件的逻辑地址
相应修改在配置文件中
Let them be hard, but never unjust

15
nectar 发表于 2011-8-4 11:50:46
soporaeternus 发表于 2011-8-4 11:29
libname user不改变至少是sql执行时的临时文件地址的,即.sas7butl文件的逻辑地址
相应修改在配置文件中
您的意思是,我上述程序的执行仍会耗用C盘的空间吗?今天白天忙着看文献,准备晚上安静时再好好运行程序,试试SXLION推荐的方法。不知道您有何高招?请明示。我想解决的问题很简单:就是运行proc sql或proc sort时C盘的临时数据库的空间不足的问题。欢迎大侠赐教。我晚上一并参阅执行。谢谢

16
soporaeternus 发表于 2011-8-4 12:13:25
nectar 发表于 2011-8-4 11:50
您的意思是,我上述程序的执行仍会耗用C盘的空间吗?今天白天忙着看文献,准备晚上安静时再好好运行程序 ...
以我的SAS9.1为例
一般在SAS安装路径\SAS\SAS 9.1\nls\zh中修改SASV9.CFG

找到
/* Setup the default SAS System user work folder                */
修改为
-WORK "你其他盘其他目录"

已有 1 人评分学术水平 热心指数 信用等级 收起 理由
tj0412ymy + 4 + 4 + 4 高手毕竟是高手!

总评分: 学术水平 + 4  热心指数 + 4  信用等级 + 4   查看全部评分

Let them be hard, but never unjust

17
sxlion 发表于 2011-8-4 12:56:02
经测试,proc sql; 完全没有问题,运行过程中,D盘空间减少。

proc sort 在运行前后没有变化,但是运行过程中C盘和D盘都有变化,估计是有些临时数据产生了。

libname user "d:\";

data a b;
  do i =1 to 10000000;
   x=int(1000*ranuni(0));
    y=int(1000*ranuni(0));
   output;
  end;
  run;

proc sql;
    create table ab2 as
        select a.x,b.y
        from a,b;
quit;

18
sxlion 发表于 2011-8-4 12:56:23
按照soporaeternus的方法是完全可行的。

19
soporaeternus 发表于 2011-8-4 13:07:52
proc sort貌似是没有问题
我把sxlion大大提供的那个测试数据(1e8,本本上跑的,太大你懂的)做sql的自连接(on 1=1)临时文件.sas7butl暂时没有太大(28M左右),机器太卡,被我停掉了
主要是以前看到过一个sql跑出.sas7butl 10G左右的情况,楼主数据要是很大,当sql查询足够复杂(纯属猜测)的时候,可能那个临时文件会比较大
Let them be hard, but never unjust

20
nectar 发表于 2011-8-4 15:03:50
非常感谢你们的热心帮助,sxlion,soporaeternus。好人有好报。

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-30 20:22