SAS SHARE 介紹及使用

 
 
SAS SHARE功能
其提供一個多用戶訪問的數據服務器,允許多個用戶同時讀寫同一個數據文件
 
除了提供本地數據共享給用戶外,也可以通過遠端路徑共享其它數據給用戶,而無需構架SAS CONNECT進行SIGN ON
 
通過SAS ACCESS配合,SAS SHARE提供了一個訪問不同數據源的統一的數據接口,起橋樑作用,如圖
 
 
通過使用SAS/SHARE*NET模塊,你可以使用非SAS客戶端發送請求給SAS SHARE server 以爲的其它不同的客戶端來訪問SAS數據
 
可以使用如下方式訪問SAS數據集
使用SAS/SHARE*NET Driver for JDBC, 允許你讀寫SAS數據.
使用SAS SQL Library for C,通過API你可以讀寫SAS數據.
使用ShareProvider連接到SAS/SHARE*NET server以查看更新數據.
 
 
簡單使用
指定通訊方式
options comamid=tcp;
啓動服務器,並賦值ID
%let TCPSEC=_NONE_;
options comamid=tcp;
procserver tbufno=12 id=shr1 AUTHENTICATE=OPTIONAL log=all;
run;
需要注意,此時ID代表的是一個服務,必須先在OS中定義好,如WIN環境下,需該當C:/WINDOWS/system32/drivers/etc/services文件,並增加如下行
share1                   5060/tcp                #
 
預定義數據庫
有如下方法
1、 在PROC SERVER使用LIBNAME語句,如libname mylib '/payroll/div2/emp';
2、在服務器管理會話中,使用PROC OPERATE過程,如
proc operate server=share1;
 allocate library mylib '/payroll/dev2/emp';
 
啓動服務器
PROC SERVER <ID=>serverid <ALLOC|NOALLOC>
<AUTHENTICATE=OPT|REQ>
<LOG=value><DTF=SAS-datetime-format>;
 
你可以使用選項NOALLOC限制用戶分配庫
通過AUTHENTICATE= 指定是否需要驗證
proc server id=share1 log=(message bytecount active
 elapsedtime);
proc server id=share1 log=all;
 
指定日期格式
proc server id=share1 alloc log=cpu dtformat=time11.2;
proc server id=share1 noalloc log=io dtformat=_NODTS_;
An example of a datetime format is 18JAN1999:14:02.39.186.
 
控制管理員訪問服務器
缺省,用戶可以發送管理員請求到服務器,通過如下指定,則需要通過密碼來訪問
proc server id=share1 oapw=blue31;
這樣,當你通過PROC OPERATE來訪問時,必須也使用同樣的OAPW選項
proc operate id=share1 sapw=blue31;
 
使用口令訪問服務器
proc server id=share1 uapw=hotwings; 
run;
這樣,在使用時,需如下
libname invoice server=share1 sapw=hotwings;
 
通過指定如下宏,將使2者進行交互時不使用安全認證
%let TCPSEC=_NONE_;
 
管理服務器
 
   1    proc operate serverid=share1;
   2    display user _all_;
   3    stop user maria;
   4    display user maria;
   5    quiesce user 1;
   6    display user 1;
   7    start user maria;
   8    quit;
 
使用數據
通過LIBNAME使用
libname mylib server=shr1;
通過PROC SQL使用
procsql;
   connectto remote(server=shr1);
   select *
   from connection to remote
      (select *
       from dd); quit;
訪問遠端數據
%let host=127.0.0.1;
libname mylib server=host.shr1;
 
 
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章