InnoDBでは,酸準拠のほかのデタベスエンジンと同様に,トランザクションの重做ログをそれがコミットされる前にフラッシュします。従来より,InnoDBはグルプコミット機能を使用してこのような複数のフラッシュ要求を1つにグループ化し,コミットごとに1つのフラッシュを回避してきました。グルプコミットでは、ほぼ同じ時間にコミットする複数のユーザートランザクションのコミットアクションを実行するために InnoDB がログファイルに 1 つの書き込みを発行するため、スループットが大幅に向上します。
InnoDBでのグルプコミットはMySQLxまで機能し,InnoDB插件を含むMySQL 5.1,およびMySQL 5.5以降でふたたび機能しています。MySQL 5.0での分散トランザクションおよび2フェーズコミット(2 pc)に対するサポートの導入は,InnoDBのグループコミット機能に混乱をもたらしました。現在,この問題は解決されています。
InnoDB内部のグループコミット機能は,MySQLの2フェーズコミットプロトコルとともに機能します。グルプコミット機能の再有効化によって、MySQL バイナリログおよび InnoDB ログファイル内のコミットの順序が以前と同じであることが完全に保証されます。これは、InnoDB 1.0.4(つまりMySQL 5.1のInnoDB插件)以降でMySQL企业备份製品を使用することが完全に安全であることを示しています。
グルプコミットは透過的です。この大幅なパフォマンス向上を利用するために何もする必要はありません。
提交
やその他のトランザクション操作のパフォマンスの詳細は,セクション8.5.2 " InnoDBトランザクション管理の最適化"を参照してください。