-
-
Striping
Striping means that you have many disks and put the first block on the first disk, the second block on the second disk, and the
N
-th block on the (
) disk, and so on. This means if your normal data size is less than the stripe size (or perfectly aligned), you get much better performance. Striping is very dependent on the operating system and the stripe size, so benchmark your application with different stripe sizes. See Section 8.13.3, “Using Your Own Benchmarks”.N
MODnumber_of_disks
The speed difference for striping is very dependent on the parameters. Depending on how you set the striping parameters and number of disks, you may get differences measured in orders of magnitude. You have to choose to optimize for random or sequential access.
-
-
For reliability, you may want to use RAID 0+1 (striping plus mirroring), but in this case, you need 2 ×
N
drives to holdN
drives of data. This is probably the best option if you have the money for it. However, you may also have to invest in some volume-management software to handle it efficiently. -
A good option is to vary the RAID level according to how critical a type of data is. For example, store semi-important data that can be regenerated on a RAID 0 disk, but store really important data such as host information and logs on a RAID 0+1 or RAID
N
disk. RAIDN
can be a problem if you have many writes, due to the time required to update the parity bits. -
On Linux, you can get much better performance by using
hdparm
to configure your disk's interface. (Up to 100% under load is not uncommon.) The followinghdparm
options should be quite good for MySQL, and probably for many other applications:hdparm -m 16 -d 1
mysql磁盘设置
最新推荐文章于 2024-11-30 08:00:00 发布