Mysql
 sql >> база данни >  >> RDS >> Mysql

Производителността на MySQL Insert се влошава на голяма маса

Не казахте дали това е тестова система или производство; Предполагам, че е производство.

Вероятно сте увеличили таблицата до размер, при който нейните индекси (или цялата партида) вече не се побират в паметта.

Това означава, че InnoDB трябва да чете страници по време на вмъквания (в зависимост от разпределението на стойностите на индекса на вашите нови редове). Четенето на страници (произволни четения) е наистина бавно и трябва да се избягва, ако е възможно.

Разделянето изглежда като най-очевидното решение, но разделянето на MySQL може да не отговаря на вашия случай на употреба.

Със сигурност трябва да обмислите всички възможни опции - качете таблицата на тестов сървър във вашата лаборатория, за да видите как се държи.

Вашият първичен ключ ми изглежда така, сякаш не е задължителен (имате друг уникален индекс), така че елиминирането му е една от опциите.

Също така помислете за приставката innodb и компресията, това ще направи вашия innodb_buffer_pool да отиде по-далеч.

Наистина трябва да анализирате вашите случаи на употреба, за да решите дали наистина трябва да запазите всички тези данни и дали разделянето е разумно решение.

Правенето на промени в това приложение вероятно ще доведе до нови проблеми с производителността за вашите потребители, така че трябва да бъдете много внимателни тук. Ако намерите начин да подобрите производителността на вмъкване, е възможно това да намали производителността на търсенето или производителността на други операции. Ще трябва да направите задълбочен тест за производителност на хардуер от производствен клас, преди да пуснете такава промяна.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Активирайте регистрирането на бавни заявки (Slow Query Log) в MySQL база данни

  2. mysql ЛЯВО присъединяване за максимална стойност на дясната таблица

  3. Защо получавам „Бинарното регистриране не е възможно“. на моя MySQL сървър?

  4. PHP системата за регистрация няма да работи (phpmyadmin, wampserver)

  5. База данни в база данни (дизайн на таблица)