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

Кога да използвате кой модел на разделяне на mysql

Зависи точно какъв проблем с производителността имате.

Разделянето на MySQL 5.1 ви позволява да разделите само първия бит от първичния ключ. Това означава, че ако искате да използвате някаква полезна форма на разделяне, често е желателно да имате съставен първичен ключ.

Един от най-често срещаните случаи на използване е за изтичане на стари данни, което може да бъде много скъпо в случаите без дялове. В този случай ще трябва да накарате първичния ключ да започва с дата/час и дял върху него.

След това можете да изтекат редовете чрез програмно премахване на старите дялове.

Други случаи са, когато често срещаните ви заявки могат да се възползват от подрязването на дялове.

Не забравяйте, че не можете да отстраните всеки проблем с производителността с разделяне; не е магия. За заявки, които не се възползват от изрязването на дял, всеки дял трябва да бъде запитан. MySQL не прави това паралелно, така че обикновено е толкова бавен, колкото използването на таблица без дялове.

  1. Определете точно какви са вашите проблеми с производителността
  2. Решете колко подобрение би било достатъчно, за да ги поправите
  3. Решете колко регресия на производителността бихте могли да толерирате в други случаи на употреба
  4. Тествайте, тествайте, тествайте и тествайте отново на вашите данни с производствен размер на хардуер от производствен клас при различни различни настройки
  5. Повтаряйте, докато не сте доволни.
  6. Извършване на съответните функционални тестове; освободи!


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mysql Актуализация въз основа на съществуването в друга таблица

  2. Не може да се получат множество обекти на таблица чрез Съхранена процедура с помощта на хибернация

  3. Изберете набор от резултати в променлива и след това използвайте тази променлива в актуализация по-късно в същата съхранена процедура

  4. Как да проверите ефективността на mysql заявката?

  5. Как да извлека пълните данни на записа чрез външния му ключ в laravel?