Introduction to SAS In-Database Processing

When using conventional processing to access data inside a database management system (DBMS), SAS asks the SAS/ACCESS engine for all rows of the table being processed. The SAS/ACCESS engine generates an SQL SELECT * statement that is passed to the DBMS. That SELECT statement fetches all the rows in the table, and the SAS/ACCESS engine returns them to SAS. As the number of rows in the table grows over time, network latency grows because the amount of data that is fetched from the DBMS to SAS increases.
SAS In-Database processing integrates SAS solutions, SAS analytic processes, and third-party database management systems. Using SAS In-Database processing, you can run scoring models, some SAS procedures, and formatted SQL queries inside the database. The following table lists the SAS products needed to use these features.
In-Database Feature
Software Required
DBMSs Supported
format publishing and the SAS_PUT() function
  • Base SAS
  • SAS/ACCESS Interface to the DBMS
DB2 under UNIX
Netezza
Teradata
scoring models
  • Base SAS
  • SAS/ACCESS Interface to the DBMS
  • SAS Scoring Accelerator
  • SAS Model Manager (optional)
Aster nCluster
DB2 under UNIX
Greenplum
Netezza
Teradata
Base SAS procedures:
FREQ
RANK
REPORT
SORT
SUMMARY/MEANS
TABULATE
  • Base SAS
  • SAS/ACCESS Interface to the DBMS
DB2 under UNIX and PC Hosts
Oracle
Netezza
Teradata
SAS/STAT procedures:
CORR
CANCORR
DMDB
DMINE
DMREG
FACTOR
PRINCOMP
REG
SCORE
TIMESERIES
VARCLUS
  • Base SAS (for CORR)
  • SAS/ACCESS Interface to Teradata
  • SAS/STAT (for CANCORR, FACTOR,PRINCOMP, REG, SCORE, VARCLUS)
  • SAS/ETS (for TIMESERIES)
  • SAS Enterprise Miner (for DMDB, DMINE, DMREG)
  • SAS Analytics Accelerator
Teradata