SAS/ACCESS Interface to ADABAS Software |
When
creating and using view descriptors, follow these guidelines
to minimize ADABAS processing and your
operating system resources and to reduce the time ADABAS takes
to access data.
- Specify selection criteria to subset the number
of logical records ADABAS returns to
the SAS System.
- Write selection criteria that allow ADABAS to
use inverted lists when possible. This applies whether you specify the selection
criteria as part of the view descriptor or in a SAS program. This is especially
important when accessing a large ADABAS file.
When ADABAS cannot
use an inverted list, it sequentially scans the entire file. You cannot guarantee
that ADABAS will use an inverted list
to process a condition on a descriptor data field, but you can write selection
criteria that allow ADABAS to use available
inverted lists effectively.
- Select only the data fields your program needs.
Selecting unnecessary data fields adds extra processing time and requires
more memory.
-
Use a BY statement to specify the order in which logical records
are presented to the SAS System only if the SAS System needs the data in a
particular order for subsequent processing. You can use ADABAS descriptor
data fields only.
As an alternative to using a BY statement, which consumes
CPU time each time you access the ADABAS file,
you could use the SORT procedure with the OUT= option to create a sorted SAS
data file. In this case, the SAS System, not ADABAS,
does the sorting. This is a better approach for data that you want to use
many times.
- If a view descriptor describes a large amount
of ADABAS data and you will use the
view descriptor often, it might be more efficient to extract the data and
place them in a SAS data file. See Performance Considerations for more information on when it is best
to extract data.
-
If you don't need all occurrences of multiple-value fields,
limit the number of occurrences with the MVF statement.
- If you reference data fields in selection criteria
that are not ADABAS descriptors, it
is generally more efficient to put those conditions in a SAS WHERE clause,
not in the view descriptor WHERE clause.
- To optimize WHERE clause processing, the ADABAS interface
view engine uses the ADABAS L3 command
when possible. However, a number of restrictions must be satisfied before
the L3 command can be used. For these restrictions, see How the SAS/ACCESS Interface to ADABAS Works.
Copyright 1999 by SAS Institute Inc., Cary, NC, USA. All rights reserved.