Illustration of prefetching with parallel I/O

I/O servers are used to prefetch data into a buffer pool.

This process is shown in Figure 1.

Figure 1. Prefetching data using I/O servers
Illustration of the data prefetching process
 1 
The user application passes the request to the database agent that has been assigned to the user application by the database manager.
 2 ,  3 
The database agent determines that prefetching should be used to obtain the data that is required to satisfy the request, and writes a prefetch request to the I/O server queue.
 4 ,  5 
The first available I/O server reads the prefetch request from the queue and then reads the data from the table space into the buffer pool. The number of I/O servers that can simultaneously fetch data from a table space depends on the number of prefetch requests in the queue and the number of I/O servers specified by the num_ioservers database configuration parameter.
 6 
The database agent performs the necessary operations on the data pages in the buffer pool and returns the result to the user application.