SAS Safety Scalable Performance Data Server 4.5 ユーザーズマニュアル

ページ / 271
with the name server. When a SAS LIBNAME statement contains the domain name 'asia'
in combination with the appropriate name server, it will locate SPD Server tables in the
directory 
/spds
 on machine asiacpu. The SAS LIBNAME statement that invokes the
SPD Server engine and makes this association is
libname asialib sasspds 'asia' server=namecpu.spdsname; 
Note that the value that follows the LIBNAME server specification is the same in all these
LIBNAME statements. The reason is that both SPD Servers use a common name service.
Asia departmental users do not need to know the name of the machine that provides storage
for their domain.
Which SAS Program Statement Runs Where?
Assume a user in the Asia department needs to create an SPD Server table on the
departmental server asiacpu. This task requires data to be extracted from an SPD Server
table named alldata. The user knows that the alldata table resides in the domain 'world.'
The user submits the following SAS code on a desktop SPD Server client:
 libname worldlib sasspds 'world' server=namecpu.spdsname;
 libname asialib sasspds 'asia' server=namecpu.spdsname;
 data asialib.mydata;
 set worldlib.alldata;
 where region='Asia';
 if country='Japan' then
     subreg=1;
 run; 
The submitted code extracts records from an SPD Server table named alldata which resides
in the domain 'world.' The 'world' domain is stored on machine worldcpu in the
directory 
/spds
. Because the alldata table resides on worldcpu, and SPD Server
processes certain SAS WHERE clauses, the search for the value 'Asia' is performed on
worldcpu.
The SAS program runs on the Asia user's desktop machine. The desktop machine scans
each row in the alldata table, looking for the string 'Japan'. If the string is found, the desktop
client then forwards the row to the machine where the output table resides, which is
asiacpu in this example.
Disk space for the output table mydata is allocated in the 
/spds
 directory on asiacpu.
The processing work, transferring data received from the user's desktop machine to the
SPD Server table, is performed by asiacpu as well.
The processing that was required to create the output SPD Server table was distributed
across three machines. However, the user's desktop machine requires no permanent disk
space, because SAS WHERE clauses execute on the machine that stores the source table.
Only the selected rows that matched the submitted WHERE clause are sent over the network
to the desktop client. This strategy significantly reduces network traffic, as well as the time
that is needed to complete a SAS program.
Which SAS Program Statement Runs Where?
69