8.9. More Read Ahead Statistics

As described in Section 7.7, “Changes in the Read Ahead Algorithm” a read ahead request is an asynchronous IO request issued in anticipation that the page being read in will be used in near future. It can be very useful if a DBA has the information about how many pages are read in as part of read ahead and how many of them are evicted from the buffer pool without ever being accessed. Based on this information a DBA can then fine tune the degree of aggressiveness of the read ahead using the parameter innodb_read_ahead_threshold.

Starting from InnoDB Plugin 1.0.5 two new status variables are added to the SHOW STATUS output. These global status variables Innodb_buffer_pool_read_ahead and Innodb_buffer_pool_read_ahead_evicted indicate the number of pages read in as part of read ahead and the number of such pages evicted without ever being accessed respectively. These counters provide global values since the start of the server. Please also note that the status variables Innodb_buffer_pool_read_ahead_rnd and Innodb_buffer_pool_read_ahead_seq have been removed from the SHOW STATUS output.

In addition to the two counters mentioned above SHOW INNODB STATUS will also show the rate at which the read ahead pages are being read in and the rate at which such pages are being evicted without being accessed. The per second averages are based on the statistics collected since the last invocation of SHOW INNODB STATUS and are displayed in the BUFFER POOL AND MEMORY section of the output.

User Comments
Sign Up Login You must be logged in to post a comment.