Distributing files between multiple disks
The bottleneck of a database server is usually the I/O. Reading or modifying data that is not stored in the memory implies accessing a storage device. Of course, buying fast disks will speed up the I/O operations, and using SSD devices could be further optimization. However, any existing storage device is just too slow to satisfy a high number of accesses per second. The main way to diminish this problem is to properly configure the caches, as described in Chapter 6, Caches. However, the set of data that is often accessed might be too large for the RAM to contain it entirely. Also, the logs probably need to be written frequently. A good configuration can mitigate this problem, but database reliability always requires data to be written to disks.
Also, the capacity of the storage devices is limited. A big database cannot be entirely contained in one device. This section describes how to distribute physical files over multiple storage devices.