Kedengarannya seperti itu
- Ketidakseimbangan indeks dari waktu ke waktu
- Fragmentasi disk
- Fragmentasi file data internal innodb
Anda dapat mencoba analyze table foo
yang tidak memerlukan kunci, hanya beberapa penurunan indeks dan membutuhkan beberapa detik.
Jika ini tidak memperbaikinya, Anda dapat menggunakan
mysql> SET PROFILING=1;
mysql> INSERT INTO foo ($testdata);
mysql> show profile for QUERY 1;
dan Anda akan melihat di mana sebagian besar waktu dihabiskan.
Rupanya innodb berkinerja lebih baik ketika penyisipan dilakukan dalam urutan PK, apakah ini kasus Anda?