O'Reilly logo

SAS 9.4 Language Reference, 6th Edition by SAS Institute

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

SAS/ACCESS Engines
SAS/ACCESS engines are LIBNAME engines that provide Read, Write, and Update
access to more than 60 relational and nonrelational databases, PC files, data warehouse
appliances, and distributed file systems. These engines are not part of Base SAS but they
depend on Base SAS. They are licensed separately or are included in many product
bundles such as SAS BI Server or SAS Activity-Based Management. Many bundles
offer the customer a choice of two out of the many SAS/ACCESS engines available.
SAS/ACCESS engines enable SAS programs to connect to a DBMS as if it were a SAS
data set. This takes advantage of performance-related DBMS features and benefits
including bulk load support, temporary table support, and native SQL support with
Explicit Pass-Through. If the DBMS is a parallel server, the engine accesses the DBMS
data in parallel by using multiple threads to connect to the DBMS server. If your SAS
program is executing a thread-enabled SAS procedure with these SAS/ACCESS engines,
even greater gains in performance are likely.
In SAS/ACCESS, threaded reads partition the result set across multiple threads. Unlike
threaded processing in Base SAS procedures, threaded reads in SAS/ACCESS are not
dependent on the number of processors on a machine. Instead, the result set is retrieved
on multiple connections between SAS and the DBMS. SAS causes the DBMS to
partition the result set by appending a WHERE clause to the SQL statement. When this
happens, a single SQL statement becomes multiple SQL statements, one on each thread.
The DBMS reads the partitions one per thread also.
The amount of scalability that is provided with the SAS/ACCESS engines depends on
the efficiency of parallelization implemented in the DBMS itself. However,
SAS/ACCESS engines have options available in the LIBNAME statement that enable
tuning of the threaded implementation within the SAS/ACCESS engines. The options
that control threaded reads in SAS/ACCESS are DBSLICE, DBSLICEPARM,
THREADS|NOTHREADS, and whether BY, OBS, or KEY options are used in a PROC
or DATA step. Refer to the SAS/ACCESS for Relational Databases documentation for
more information.
SAS Scalable Performance Data Server
SAS Scalable Performance Data Server is a multi-user parallel-processing data server
with a comprehensive security infrastructure, backup and restore utilities, and
administrative and tuning options. SPD Server supports native SQL, FedSQL, and DS2
languages. Options specific to the SPD Server control threaded processing. The
NOTHREADS and CPUCOUNT options have no effect. See the SAS Scalable
Performance Data Server: Administrators Guide and SAS Scalable Performance Data
Server: Users Guide for information.
SAS Intelligence Platform
The SAS Intelligence Platform is an infrastructure for creating, managing, and
distributing enterprise intelligence. This infrastructure supports SAS solutions for
industries such as financial services, life sciences, health care, retail, and manufacturing.
212 Chapter 13 Support for Parallel Processing

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required