The SAS
In-Database Code Accelerator enables you to publish a DS2 thread program
to the database and execute that thread program in parallel inside
the database. Examples of thread programs include large transpositions,
computationally complex programs, scoring models, and BY-group processing.
The SAS In-Database
Code Accelerator for Hadoop and the SAS In-Database Code Accelerator
for Teradata also enable you to publish and execute the DS2 data program
inside the database.
To use the SAS In-Database
Code Accelerator, the following requirements must be met. Otherwise,
the thread program will be run in multiple threads on the client machine.
-
The following products must be
licensed at your site:
-
-
SAS In-Database Code Accelerator
-
SAS/ACCESS Interface to your database
(Greenplum, Hadoop, or Teradata)
-
The SAS Embedded Process must be
installed and configured on your database.
For information about
installing and configuring the SAS Embedded Process, see SAS In-Database Products: Administrator's Guide.
-
Your DS2 code includes a thread
program and a data program.
-
The table used as input to the
thread program must reside in the database.
-
Either the PROC DS2 DS2ACCEL option
must be set to YES or the DS2ACCEL system option must be set to ANY.
With in-database processing,
data is distributed on different data partitions. Each DS2 thread
that is running inside the database has access to its own data partition.
When doing BY-group processing, each DS2 thread with a BY statement
can group and order only the rows in the same data partition. The
data partition might have only part of the entire group of data. You
would need to do a final aggregation in the main data program. However,
if you use the PROC DS2 statement’s BYPARTITION=YES option,
the entire group of data resides on the same data partition.
For more information,
see
BY-Group Processing When Running Thread Programs inside the Database.