Mysql innodb: innodb_flush_method

in the following link

http://dev.mysql.com/doc/refman/5.1/en/innodb-parameters.html#sysvar_innodb_flush_method

he says: Different values โ€‹โ€‹of this variable can have a significant impact on InnoDB performance. For example, on some systems where InnoDB data and log files are located in the SAN, it was discovered that the innodb_flush_method parameter for O_DIRECT could degrade the performance of simple SELECT statements by three times.

Why can O_DIRECT slow down select?

+6
mysql innodb
source share
2 answers

O_DIRECT bypasses the OS caching system. A SAN can be a very fast storage system, but usually it will be located somewhere else on the network and is proxied / hidden behind other other layers. Using O_DIRECT, which eliminates local caching, you force InnoDB to access the storage system directly.

+6
source share

You really need to experiment with the flush method on your equipment to see what works best for you. Environment:

innodb_flush_method = O_DIRECT

Our performance is 15% improved on the Dell 2950 server with SAS 15K RPM drives configured in RAID 1 configuration with the Dell PERC caching controller. We are running the Ubuntu 9.04 kernel, and most of the work is mysql using innodb. Your mileage may vary.

+2
source share

All Articles