Previous Topic: Record Definition Language

Next Topic: How the RDL Operates


Performance Considerations When Using RDL

Consider three factors when you evaluate performance:

Whenever RDL is used, non-reentrant code is compiled to execute the compression and expansion specified by the RDL. When I/Os are performed sequentially, this consideration is negligible. However, for the CICS or other systems performing concurrent reads and writes to the same ACB, this penalty becomes severe. For any data set used under CICS or similar systems, we strongly recommend Super Express, Standard Tables, or Hardware Compression, if at all possible.

Maximizing the compression ratio represents a cost saving for users, because more data can be stored per unit of storage available. The accompanying increase in processing overhead may or may not represent an increased cost to the user, depending upon the circumstances unique to each user.

Many factors influence whether the increase in processing overhead results in a cost or a saving to the user. Although it seems that increased processing overhead to compress and expand records always costs the user more, more records can be stored per block when compressed, reducing the number of times that data blocks must be transferred between the application and the storage device. This reduction represents a decrease in processing overhead and may result in a net saving. The availability of CPU cycles during a typical job mix is also important. The total number of CPU cycles available per unit of time is a fixed cost to the user, directly related to the computing power of the user's installed hardware. If CPU cycles are available during a typical job mix, increased processing overhead may result in no increased cost.

In any event, there is a trade-off between the compression ratio and processing overhead. As the compression ratio approaches the theoretical maximum (that is, storing the greatest amount of data in the fewest number of bits), processing overhead tends to increase. By benchmark testing, you can determine the optimum trade-off for yourself, based upon your requirements.