Better Scalability with Improved Purge Scheduling
The purge operations (a type of garbage collection) that InnoDB performs automatically can be done in one or more separate threads, rather than as part of the master thread. This change improves scalability, because the main database operations run independently from maintenance work happening in the background.
To enable this feature, set the configuration option innodb_purge_threads=
, as opposed to the default of 0, which combines the purge operation into the master thread. If DML action is concentrated on a single table or a few tables, keep the setting low so that the threads do not contend with each other for access to the busy tables. If DML operations are spread across many tables, increase the setting. Its maximum is 32.
n
There is another related configuration option, innodb_purge_batch_size
with a default of 20 and maximum of 5000. This option is mainly intended for experimentation and tuning of purge operations, and should not be interesting to typical users.
For more information about InnoDB I/O performance, see , "Optimizing InnoDB
Disk I/O".