Converting Default Base SAS Engine Data Sets to SPD Engine Data Sets

Using the COPY and APPEND Procedures

You can convert existing default Base SAS engine data sets to SPD Engine data sets using the following methods:
  • PROC COPY
  • PROC APPEND
Some limitations apply. If your default Base SAS engine data has integrity constraints, then the integrity constraints are dropped when the file is created in the SPD Engine format. The following chart of file characteristics indicates whether the characteristic can be retained or dropped, or if it results in an error when converted.
Conversion Results for Base SAS File Characteristics
Base SAS File Characteristic
Conversion Result
Indexes
Rebuilt in SPD Engine (in parallel if ASYNCINDEX=YES)
Default Base SAS engine COMPRESS=YES |CHAR |BINARY *
Converts with compression if the data file is not encrypted
Default Base SAS engine ENCRYPT=YES *
Converts with encryption
Integrity constraints
Dropped without ERROR
Audit file
Dropped without ERROR
Generations file
Dropped without ERROR
* If the default Base SAS engine file has both compression and encryption, the compression is dropped, but the encryption is retained. SAS retains the security of the data set instead of the compression.

Converting Default Base SAS Engine Data Sets Using PROC COPY

To create an SPD Engine data set from an existing default Base SAS engine data set you can simply use the COPY procedure as shown in the following example. The PROC COPY statement copies the default Base SAS engine-formatted data set LOCAL.RACQUETS to a new SPD Engine-formatted data set SPORT.RACQUETS.
libname sport spde 'conversion_area';

proc copy in=local out=sport;
   select racquets;
run;
Even though the indexes on the default Base SAS engine data set are automatically regenerated as the SPD Engine indexes (both .hdx and .idx files), they are not created in parallel because the data set option ASYNCINDEX=NO is the default.
If an SPD Engine data set is encrypted, only the data component files are encrypted. The metadata and both index files are not encrypted.

Converting Default Base SAS Engine Data Sets Using PROC APPEND

Use the APPEND procedure when you need to specify data set options for a new SPD Engine data set.
The following example creates an SPD Engine data set from a default Base SAS engine data set using PROC APPEND. The ASYNCINDEX=YES data set option specifies to build the indexes in parallel. The PARTSIZE= option specifies to create partitions of 100 megabytes.
libname spdelib spde 'old_data';
libname somelib 'old_data';
proc append base=spdelib.cars (asyncindex=yes partsize=100) 
  data=somelib.cars; 
run;