Parallel Storage

Parallel Storage Overview

The SAS Scalable Performance Data Engine (SPD Engine) and the SAS Scalable Performance Data Server (SPD Server) are designed for high-performance data delivery. They enable rapid access to SAS data for intensive processing by the application.
Although the Base SAS engine is sufficient for most tables that do not span volumes, the SAS SPD Engine and SAS SPD Server are high-speed alternatives for processing very large tables. They read and write tables that contain millions of observations, including tables that expand beyond the 2-GB size limit imposed by some operating systems. In addition, they support SAS analytic software and procedures that require fast processing of tables.

Options for Implementing Parallel Storage

Two options are available for implementing parallel storage:
  • The SAS SPD Engine is included with Base SAS software. It is a single-user data storage solution that shares the high-performance parallel processing and parallel I/O capabilities of SAS SPD Server, but lacks the additional complexity of a multi-user server.
    The SPD Engine runs in UNIX and Windows operating environments as well as some z/OS operating environments.
  • The SAS SPD Server is available as a separate product. It is a multi-user parallel-processing data server with a comprehensive security infrastructure, backup and restore utilities, and sophisticated administrative and tuning options.
    The SAS SPD Server runs in Windows and UNIX operating environments.

How Parallel Storage Works

The SAS SPD Engine and SAS SPD Server deliver data to applications rapidly by organizing large SAS data sets into a streamlined file format. The file format enables multiple CPUs and I/O channels to perform parallel input/output (I/O) functions on the data. Parallel I/O takes advantage of multiple CPUs and multiple controllers, with multiple disks per controller, to read or write data in independent threads.
One way to take advantage of the features of the SAS SPD Engine is through a hardware and software architecture known as symmetric multiprocessing (SMP). An SMP machine has multiple CPUs and an operating system that supports threads. These machines are usually configured with multiple controllers and multiple disk drives per controller.
When the SAS SPD Engine reads a data file, it launches one or more threads for each of the CPUs in the SMP machine. These threads then read data in parallel from multiple disk drives, driven by one or more controllers per CPU. The SAS SPD Engine running on an SMP machine provides the capability to read and deliver much more data to an application in a given elapsed time.
For more information, see the SAS SPD Server documentation, which is available at http://support.sas.com/documentation/onlinedoc/spds/.