Chapter Contents |
Previous |
Next |
SAS/CONNECT User's Guide |
You can connect to multiple remote SAS sessions, process applications, and access data in any of the remote sessions or in your local SAS session. Processing and data access can be performed asynchronously on a remote host as you continue processing on your local host. This processing can be performed on a periodic basis using the SAS/CONNECT agent scheduler.
Having the ability to spread processing among remote resources, SAS/CONNECT also provides the ability to design and develop applications that communicate directly or indirectly by using message queues. Also, SAS/AF developers are no longer limited to accessing objects only within their local environments. They can now distribute selected portions of their encapsulated object frameworks across remote session boundaries.
The client/server capabilities of SAS/CONNECT also enable you to combine data from two seemingly incompatible systems into one data set. For example, you can access data in an ORACLE database on one system and in a DB/2 database on another system and combine them on your local host.
With all SAS/CONNECT's capabilities, you are able to use your computing resources to their best advantage by distributing SAS processing to the most appropriate machine.
SAS/CONNECT provides several services to enable the development of distributed applications:
Each set of services has a well defined set of benefits. By matching these characteristics to the characteristics of your data and your application needs, you can determine how best to combine these services to write the most efficient distributed application. Most often, the best implementation of a distributed application incorporates a combination of these services.
Compute Services That Use RSUBMIT in the SAS Client/Server Environment |
Compute services take advantage of remote computing resources (hardware, software, and data) to execute an application more efficiently by maximizing the use of all computing resources. As Model of Compute Services That Use RSUBMIT Processing illustrates, these services enable you to move some or all portions of an application's processing to a remote machine.
Model of Compute Services That Use RSUBMIT Processing
You can:
The results of the remote processing are then returned to the local machine. This is useful when the remote machine has hardware or software resources available to perform the task at hand more efficiently. It can also be preferable if the amount of data to be processed is too large to be moved to the local machine or if the data are updated too frequently for a local static copy to be useful.
In addition, compute services allow you to submit statements to be executed asynchronously by a remote host. Once submitted, control is returned to the local host to allow you to immediately continue local processing. This gives you the ability to increase productivity by processing in parallel with both a local and a remote SAS session. Results from the remote asynchronous processing can be retrieved at your request.
Compute Services That Use Remote SQL Pass-Through in the Client/Server Environment |
Remote SQL Pass-Through (RSPT) gives you control of where SQL processing occurs. As Remote SQL Pass-Through Services shows, RSPT allows you to pass SQL statements to a remote SAS SQL processor by passing them through a remote SAS server. You can also use RSPT to pass SQL statements to a remote DBMS by passing them through a remote SAS server and a REMOTE access engine that supports pass-through.
Remote SQL Pass-Through Services
With RSPT you can:
You can invoke RSPT through PROC SQL statements that are passed to the remote server for execution in the server SAS session, or you can store SQL pass-through statements in local SQL views.
Data Transfer Services in the SAS Client/Server Environment |
As Model of Data Transfer Services Processing illustrates, data transfer services provide a method for moving a copy of the data from one machine to another machine. Subsequent local processing takes place against the local copy of the data without generating further network traffic until you decide to update the copy of the data with another transfer.
Model of Data Transfer Services Processing
Data is transferred with the UPLOAD and DOWNLOAD procedures. You can transfer SAS data sets, SAS catalogs, MDDB, FDB, DMDB, SQL views, entire SAS data libraries, and external files.
Note: External files can be transferred in either text or binary format.
The data transfer capabilities enable you to
Remote Library Services in the SAS Client/Server Environment |
Remote library services (RLS) provides transparent access to remote data. The data resides in remote libraries, and RLS moves the data through the network as the local execution requests it. As Model of RLS Processing illustrates, a copy of the data is not written to the local file system, and the data must pass through the network on any subsequent use by the local processing system.
RLS gives you:
Remote library services are enabled in the client/server environment by a REMOTE engine that executes in the local or client SAS session and a server that executes in the remote or server SAS session. The SAS procedures and DATA steps that execute in the local session pass requests to access remote SAS files to the REMOTE engine. The REMOTE engine communicates the requests for data to the server. The server then administers the requests to SAS files on behalf of the local (client) SAS session.
Direct Messaging Services in the SAS Client/Server Environment |
The direct-messaging facility allows basic and flexible message construction, transmission, and notification services that span operating system and hardware boundaries across the enterprise. Messages are free-form. Their structure, which is defined by the applications developer, may range from a simple collection of variables to complex hierarchies of SCL lists. Additionally, messages may include one or more attachments that can take the form of SAS data sets or filtered subsets, catalogs or catalog entries, MDDB, FDB, DMDB, SQL views, and external files.
Each message contains a message type field. This field is used to define the set of message types that are meaningful to a particular program. When a program receives a message with a known message type, it knows the layout of the data that is contained in the message body and can take the appropriate action based on the values of the data. Basic Structure of Direct-Messaging illustrates the basic structure of direct-messaging.
Basic Structure of Direct-Messaging
Direct messaging services can be used to
Indirect Messaging Services in the SAS Client/Server Environment |
SAS indirect messaging enables programs to communicate indirectly by placing messages on queues in storage. Therefore, the pieces of your application can run independently of each other, can run at different speeds and times, and can run without a direct connection between them. Basic Structure of Indirect-Messaging illustrates the basic structure of indirect-messaging.
Indirect messaging provides a basic and logical means of communication. Programs communicate indirectly by delivering messages to queues and by fetching from or browsing messages in queues. The message queues are administered by a queue manager. The queue manager is a server process that is responsible for allocating the queues, maintaining access information for each of the queues, and administering the messages that belong to each queue. Queues can be designated as permanent, which means that the queue manager is responsible for storing the messages sent to this type of queue and for maintaining their persistence until the messages are fetched.
Basic Structure of Indirect-Messaging
Indirect messaging services provide:
Chapter Contents |
Previous |
Next |
Top of Page |
Copyright 1999 by SAS Institute Inc., Cary, NC, USA. All rights reserved.