When using
conventional processing to access data inside a Netezza Performance
Server (NPS) or TwinFin data warehouse, SAS Enterprise Miner 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 Netezza data warehouse. That SELECT statement fetches all the
rows in the table, and the
SAS/ACCESS engine returns them to SAS Enterprise
Miner. As the number of rows in the table grows over time, network
latency grows because the amount of data that is fetched from the
Netezza data warehouse to the SAS scoring process increases.
The SAS
Scoring Accelerator for Netezza embeds the robustness of SAS Enterprise
Miner scoring models directly in the highly scalable Netezza database.
By using the SAS In-Database technology and the SAS Scoring Accelerator
for Netezza, the scoring process is done inside the data warehouse,
and thus does not require the transfer of data.
The SAS
Scoring Accelerator for Netezza takes the models that are developed
by SAS Enterprise Miner and translates them into scoring functions
that can be deployed inside Netezza. After the scoring functions are
published, the functions extend the Netezza SQL language and can be
used in SQL statements like other Netezza functions.
The SAS Scoring
Accelerator for Netezza consists of two components:
-
the Score
Code Export node in SAS Enterprise Miner. This extension exports the
model scoring logic, including metadata about the required input and
output variables, from SAS Enterprise Miner.
-
the publishing client that includes the
%INDNZ_PUBLISH_MODEL macro. This macro translates the scoring model
into .c, .cpp, and .h files for creating the scoring functions and
generates a script of Netezza commands for registering the scoring
functions. The publishing client then uses the
SAS/ACCESS Interface
to Netezza to publish the scoring functions to Netezza.