Definition
Cleaners in the Informix database are responsible for writing modified pages from the data buffers to disk. "Page cleaners" are the Informix threads that organize disk I/O. The number of cleaners is set using the
CLEANERS parameter.Data buffers are grouped together into "least recently used (LRU) queues" to minimize contention when processes look for free buffers. The number of LRU queues is set using the
LRUS parameter. Refer to LRUS (Informix).Use
You can use the
database overview of the SAP/Informix database monitor to view cleaners and LRU queues.When tuning cleaners, it is important to decide how many modified (that is, "dirty") pages should be allowed to exist in the buffer. The values LRU start cleaning and LRU end cleaning tell the system when to start writing modified pages between checkpoints, and when to stop. The values are expressed as a percentage of total pages and are set using the
LRU_MAX_DIRTY and LRU_MIN_DIRTY parameters respectively. Refer to LRU_MAX_DIRTY, LRU_MIN_DIRTY (Informix).Informix distinguishes between various classes of writes to disk, as shown in the table below. Statistics on these writes describe I/O activity in the system.
Types of Write To Disk for Informix
Type of Write |
Explanation |
Foreground writes |
These occur synchronously when a process needs a buffer, does not find a clean one, and is forced to activate a cleaner and wait for the buffer to be written out. Foreground writes are very bad for performance but fortunately rare in Informix version 6 or later. |
LRU writes |
These are performed by the page cleaners between checkpoints. These writes are not as efficient as "chunk writes" (see below), but are important in reducing the total I/O to be performed at checkpoint. |
Chunk writes |
These are highly efficient writes that Informix uses to move large numbers of data pages at a checkpoint, for example, by sorting pages and sending them in large write operations to disk. |