11.8.2 LRU management suppression settings for a UAP
In an OLTP environment, the data recently cached in the global buffer may be removed from memory due to a UAP that searches and updates a large amount of data, resulting in a temporary reduction in OLTP performance. If it is possible to identify the UAP that searches and updates a large amount of data, this reduction in OLTP performance can be prevented by suppressing LRU management for the UAP.
- Reference note
- LRU management can only be suppressed for accesses from UAPs. Accesses from commands and utilities are managed by LRU. However, the following command suppresses LRU management.
- pddbst
LRU management can be suppressed by specifying the -b option.
- Organization of this subsection
- (1) Criteria
- (2) Effects
- (3) Specification
- (4) Notes
(1) Criteria
We recommend that you apply LRU management suppression when you execute a UAP that searches and updates a large amount of data using the global buffer.
(2) Effects
A page accessed by a UAP for which LRU management has been suppressed is cached in the global buffer as the oldest page accessed, regardless of the access frequency. This means that the pages accessed by this UAP are removed from memory before pages accessed by any UAP to which URL management is being applied, thereby retaining the latter in memory. However, when a UAP that suppresses LRU management and a UAP that does not suppress LRU management both access the same page, LRU management is used for that page.
(3) Specification
Specify NO in the PDDBBUFLRU operand in the client environment definition.
(4) Notes
- If a buffer shortage occurs, the pages accessed by a UAP for which LRU management has been suppressed are removed from memory regardless of the access frequency. Therefore, the response performance for such a UAP may decrease as the input/output count increases due to reduction in the buffer hit rate.
- A UAP allocates 1-4 buffer sectors simultaneously. Therefore, even if LRU management suppression has been set, 1-4 cached pages may be removed from the global buffer per UAP.
- If LRU management is suppressed for a UAP that executes update processing, more log information is output than when LRU management is not suppressed, because more write operations occur on the database and log output occurs frequently. To avoid space shortages, you should take the following steps:
- Re-evaluate the sizes of the system log files.
- If the UAP can be executed in the no-log mode, specify NO in PDDBLOG in the client environment definition.
Use the formula shown below to determine the amount of log information when LRU management is suppressed. If you specify 1024 in the pd_log_rec_leng operand, you can minimize the amount of log information that is output when LRU management is suppressed.
update-get-count# x pd_log_rec_leng-operand-value |
- #: To determine the update-get-count, check the value of DIDUC in the UAP statistical report or in the UAP statistical information.
- When a rollback occurs, LRU management might be used even if the UAP suppresses LRU management. This differs depending on the timing of the rollback, as shown below.
Rollback timing | Is LRU management used? |
---|
Timing is defined by SQL | There is a rollback to the commit-time immediately prior to execution of a specified control SQL ROLLBACK statement. | LRU management is suppressed. |
Rollback is executed automatically by HiRDB | Processing cannot continue at the time SQL is executed, and an implicit rollback to the immediately prior commit-time is executed by HiRDB. | LRU management is suppressed. |
The UAP terminates abnormally and HiRDB rolls back to the immediately prior commit-time. | LRU management is used. |
Rollback is executed by a delayed rerun. | LRU management is used. |