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.

- 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.