Most sites use
the SPD Engine to manage very large amounts of data, which can have
thousands of variables, some of them indexed. At these sites, separate
storage paths are usually defined for the various component types.
In addition, using disk striping and RAIDS (Redundant Array of Independent
Disks) can be very efficient. For more information, see “SPD
Engine Disk I/O Setup” in Scalability and Performance at
http://support.sas.com/rnd/scalability/spde/setup.html
.
All metadata
component files must begin in the primary path, even if they span
devices. In addition, specifying separate paths for the data and
index components provides further performance gains. You specify
different paths because the I/O load is distributed across disk drives.
Separating the data and index components helps prevent disk contention
and increases the level of
parallelism that
can be achieved, especially in complex WHERE evaluations. The following
example code specifies a primary path for the metadata. The code uses
the
DATAPATH= and
INDEXPATH= to specify additional, separate paths
for the data and index component files:
libname all_users spde '/disk1/metadata'
datapath= ('/disk2/userdata' '/disk3/userdata')
indexpath= ('/disk4/userindexes' '/disk5/userindexes');
The metadata is stored on disk1, which is the primary path. The
data is on disk2 and disk3, and the indexes are on disk4 and disk5.
For all path specifications, you must specify the complete pathname.
CAUTION:
The primary
path must be unique for each library.
If two librefs are
created with the same primary path, but with differences in the other
paths, data can be lost. You cannot use NFS in any path option other
than the primary path.
Note: If you are planning to store
data in locally mounted drives and access the data from a remote computer,
use the remote pathname when you specify the LIBNAME. If
/data01
and
/data02
are locally mounted drives on the localA computer, use the pathnames
/nfs/localA/data01
and
/nfs/localA/data02
in the LIBNAME statement.
Note: You cannot change the pathnames
of the files. When you specify the DATAPATH=, INDEXPATH=, METAPATH=,
or primary path LIBNAME options, make sure that the identical paths
that were used when the data set was created are used every time you
access the data sets. The pathnames for these locations are stored
internally in the data set. If you change any part of the pathname,
the SPD Engine might not be able to find the data set, or it might
damage the data set.