Поне с InnoDB (и се надявам, че те имат за това), имате повече операции дори и без външни ключове . Вмъкването е приблизително това:
- Вмъкване на ред
- Маркиране в двоичен буфер на журнал
- Маркиране на commit
Изтриванията правят следното:
- Означаване на реда като премахнат (приемане на същото попадение като вмъкване – страницата се пренаписва)
- Маркиране в двоичен буфер на журнал
- Означаване като извършено
- Всъщност отидете да премахнете реда (приемате същото удар като вмъкване – страницата се пренаписва)
- Изчистването на нишката също проследява изтриванията в двоичния буфер на журнала.
За това имате два пъти повече работа за изтриване, а не за вмъкване. Изтриването изисква тези две записи, защото трябва да бъде маркирано като премахнато за всички версии занапред, но може да бъде премахнато само когато не останат транзакции, които го виждат. Тъй като InnoDB записва само пълни блокове на диска, наказанието за модификация за блок е постоянно.