Не казахте дали това е тестова система или производство; Предполагам, че е производство.
Вероятно сте увеличили таблицата до размер, при който нейните индекси (или цялата партида) вече не се побират в паметта.
Това означава, че InnoDB трябва да чете страници по време на вмъквания (в зависимост от разпределението на стойностите на индекса на вашите нови редове). Четенето на страници (произволни четения) е наистина бавно и трябва да се избягва, ако е възможно.
Разделянето изглежда като най-очевидното решение, но разделянето на MySQL може да не отговаря на вашия случай на употреба.
Със сигурност трябва да обмислите всички възможни опции - качете таблицата на тестов сървър във вашата лаборатория, за да видите как се държи.
Вашият първичен ключ ми изглежда така, сякаш не е задължителен (имате друг уникален индекс), така че елиминирането му е една от опциите.
Също така помислете за приставката innodb и компресията, това ще направи вашия innodb_buffer_pool да отиде по-далеч.
Наистина трябва да анализирате вашите случаи на употреба, за да решите дали наистина трябва да запазите всички тези данни и дали разделянето е разумно решение.
Правенето на промени в това приложение вероятно ще доведе до нови проблеми с производителността за вашите потребители, така че трябва да бъдете много внимателни тук. Ако намерите начин да подобрите производителността на вмъкване, е възможно това да намали производителността на търсенето или производителността на други операции. Ще трябва да направите задълбочен тест за производителност на хардуер от производствен клас, преди да пуснете такава промяна.