INDEXPATH= LIBNAME Statement Option

Specifies a path or list of paths in which to store the two types of index component files (.hbx and .idx) associated with an SPD Engine data set.
Default: the primary path specified in the LIBNAME statement
Engine: SPD Engine only

Syntax

INDEXPATH=('path1' )<'path2'...>

Required Argument

'pathn'
is a complete pathname, in single or double quotation marks within parentheses. Separate multiple arguments with spaces.
Note: The pathnames specified in the INDEXPATH= option must be unique for each library. Librefs that are different but reference the same pathnames can result in lost data.

Details

The SPD Engine creates the two index component files in the locations specified. If there are multiple pathnames specified, the first path is randomly selected. When there is not enough space in the path, the index component files overflow into the next file path specified, and so on.
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. For example, 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.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 names of 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 might damage the data set.

Example: Creating Index Component Files

The following example creates index component files that span the paths /DISK1/IDXFLOW1, /DISK2/IDXFLOW2, and /DISK3/IDXFLOW3.
libname mylib spde '/metadisk/metadata'
                  datapath= ('/disk1/dataflow1' '/disk2/dataflow2' 
                              '/disk3/dataflow3')
                  indexpath=('/disk1/idxflow1' '/disk2/idxflow2' 
                              '/disk3/idxflow3' );
The path for the first index component files is randomly selected. SAS puts the index component files in the first location until that location is full, and then continues in a cyclical fashion. For example, if /DISK2/IDXFLOW2 is randomly selected, the first index component files are located there. When that location is full, the index component files overflow to /DISK3/IDXFLOW3, and then to /DISK1/IDXFLOW1.