Spec-Zone .ru
спецификации, руководства, описания, API

18.2.5. KEY Разделение

Разделение ключом подобно разделению хешем, за исключением того, что, где разделение хеша использует определяемое пользователем выражение, хеш-функция для ключевого разделения предоставляется сервером MySQL. Использование MySQL Cluster MD5() с этой целью; для таблиц, используя другие механизмы хранения, сервер использует свою собственную внутреннюю хеш-функцию, которая основана на том же самом алгоритме как PASSWORD().

Синтаксис управляет для CREATE TABLE ... PARTITION BY KEY подобны тем для того, чтобы составить таблицу, которая делится хешем. Существенные различия перечисляются здесь:

Также возможно разделить таблицу линейным ключом. Вот простой пример:

CREATE TABLE tk (    col1 INT NOT NULL,    col2 CHAR(5),    col3 DATE)PARTITION BY LINEAR KEY (col1)PARTITIONS 3;

Используя LINEAR имеет тот же самый эффект на KEY разделение, как это делает на HASH разделение, с числом раздела, получаемым, используя алгоритм "полномочия два", а не арифметика по модулю. См. Раздел 18.2.4.1,"LINEAR HASH Разделение", для описания этого алгоритма и его импликаций.