ENFORM User's Guide

Improving Performance
Using ENFORM Efficiently
5–12 058058 Tandem Computers Incorporated
Share Query Processors
To reduce the number of processes competing for a system, create one or more
shareable server query processors. The major advantages of a shareable server query
processor are:
Generally fewer processes exist within the system which results in reduced use of
system resources such as memory paging and disc arm movement.
The number of open operations is reduced because the Command Interpreter
ASSIGN command can be issued to hold files open for the life of the server query
processor.
Each shared server query processor can have a different purpose. For example, create
different shared server query processors for:
Short queries where a response is expected in a few seconds.
More lengthy queries that require more processing time.
Limited access files. In this case the logon default of the person creating the query
processor determines who has access to the files.
General access for those who need it.
Reduce Network Traffic
When your process searches data on a remote system, reduce competing processes by
starting ENFORM on that system and using the spooler to transfer the data. Using
spooler-to-spooler communication takes maximum advantage of the network
bandwidth. An additional advantage is that you can hold the records retrieved in the
spooler for later printing or for printing if the network link terminates.
Alternatively, either start a server query processor on the remote system or use a
server query processor that already exists on that system to obtain the data. In this
case, the server query processor transmits the data to a query compiler/report writer
process on your system.
Changing the Wording of
the Query Itself
Changing the wording of a query often leads to performance improvement because of
the way in which ENFORM determines its search strategy. ENFORM analyzes each
query to determine the optimal search strategy. ENFORM attempts to minimize the
number of physical file accesses needed by defining the sequence in which the
physical files are accessed and by defining how each physical file is accessed (for
example, by key value). ENFORM defines its file access sequence on the basis of
information obtained from the dictionary record description and any qualifications for
record selection specified in the query. This information is often incomplete.
To identify where possible changes in query wording might be helpful, examine the
ENFORM statistics (described in this section). Determine the sequence in which the
files are searched, the number of reads performed, and the number of positionings
needed.