Skip to content

Multiple page asynchronous I/O requests

I/O unit size in InnoDB is only one page, even if doing read ahead. 16KB I/O unit size is too small for sequential reads, and much less efficient than larger I/O unit size.

InnoDB uses Linux asynchronous I/O (aio) by default. By submitting multiple consecutive 16KB read requests at once, Linux internally can merge requests and reads can be done more efficiently.

On a HDD RAID 1+0 environment, more than 1000MB/s disk reads can be achieved by submitting 64 consecutive pages requests at once, while only 160MB/s disk reads is shown by submitting single page request.

With this feature InnoDB submits multiple page I/O requests.

Version Specific Information

The feauture has been ported from the Facebook MySQL patch in 5.7.20-18.

Status Variables

Innodb_buffered_aio_submitted

Option Description
Data type: Numeric
Scope: Global

This variable has been implemented in 5.7.20-18. The variable shows the number of submitted buffered asynchronous I/O requests.

Other Reading