挿入が多いInnoDBテーブルがCPUをすべて使用しない
パケットログデータベースを持っていますが、ほとんど照会されません。挿入時に高速である必要があります。ACIDコンプライアンスを維持したいので、InnoDBを使用しています。1つのパケットを失うだけでも、お客様に損害を与える可能性があるからです。パフォーマンス調整シナリオでは、複数のDB接続を介して1,000,000パケットをサーバーに送信します。しかし、my.cnfでどの設定を使用しても、12コアのシステムでmysqldプロセスが900%を超えるCPUを使用することはできません。(ボックスでは他に何も実行されていません。) 以下を設定しました innodb_file_per_table = 1 innodb_write_io_threads = 64 innodb_read_io_threads = 64 innodb_thread_concurrency = 0 MyISAMを使用すると、すべてのパケットを約6秒で書き込むことができます。しかし、InnoDBは約25必要です。MySQLに残りのシステムリソースを使用させ、より速く挿入できますか? 編集:これはテーブルのスキーマです: +-------+----------------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+----------------------+------+-----+---------+-------+ | t | bigint(20) unsigned | YES | | NULL | | | a | char(1) | YES | …