Когда использовать какую модель разбиения mysql

Хорошо, ребята, я только начинаю с разбиения некоторых таблиц в mySQL. Есть несколько разных способов описать это, но я не могу найти более практичный подход. - На какой тип данных лучше всего влияет каждый способ секционирования?

Или это не имеет большого значения?

Ссылка: http://dev.mysql.com/tech-resources/articles/performance-partitioning.html


person Industrial    schedule 22.03.2010    source источник


Ответы (2)


Это зависит от того, какая у вас проблема с производительностью.

Разделение MySQL 5.1 позволяет вам разделить только первый бит первичного ключа. Это означает, что если вы хотите использовать какую-либо полезную форму разделения, часто желательно иметь составной первичный ключ.

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

Затем вы можете удалить строки, программно удаляя старые разделы.

В других случаях ваши общие запросы могут извлечь выгоду из сокращения секций.

Помните, что вы не можете решить все проблемы с производительностью с помощью разбиения на разделы; это не магия. Для запросов, которые не выигрывают от сокращения секций, необходимо запрашивать каждую секцию. MySQL не делает этого параллельно, поэтому обычно это происходит так же медленно, как при использовании таблицы без разделов.

  1. Точно определите, в чем заключаются ваши проблемы с производительностью
  2. Решите, сколько улучшений будет достаточно, чтобы исправить их
  3. Решите, насколько снижение производительности вы можете допустить в других случаях использования.
  4. Тестируйте, тестируйте, тестируйте и еще раз тестируйте данные производственного масштаба на оборудовании производственного уровня с различными настройками.
  5. Повторяйте, пока не будете удовлетворены.
  6. Провести соответствующее функциональное тестирование; выпуск!
person MarkR    schedule 22.03.2010
comment
Привет Марк, Спасибо за ваш обширный ответ. Очень ценю! Когда вы говорите «Композитный ключ», что именно вы имеете в виду? - person Industrial; 23.03.2010
comment
Хорошо, теперь я пойму, как работает составной ключ. Большое спасибо за твою помощь! - person Industrial; 24.03.2010

Позвольте мне поделиться с вами этим отличный пост о разбиении и разбиении на подразбивки по времени/дате с огромными потоками данных. Он демонстрирует, как разделение может быть хорошим решением для масштабируемых архитектур.

person Greg    schedule 22.11.2010