Можно ли смешивать многораздельные и неразделенные таблицы на одном сервере MySQL? - PullRequest
3 голосов
/ 16 марта 2012

Я только что прочитал этот урок , и на слайде 39 было выделено: «НЕ смешивайте разделенные и непарфированные таблицы на одном сервере». Я не знаю, на что ссылается автор.Это относится только к бенчмаркингу?Есть ли какое-то требование, чтобы все таблицы были разделены, когда вы разделяете одну?Даже если это относится только к бенчмаркингу, мне все равно хотелось бы знать, почему все они должны быть разделены, чтобы получить хорошие результаты теста.

1 Ответ

5 голосов
/ 17 марта 2012

Слайд 39 имеет следующий заголовок:

Benchmarking partitions - ISOLATION
- Try to reproduce working conditions
- no other services running while benchmarking
- restart the server before each test
- Do NOT mix partitioned and unpartitioned tables in the same server
- Use MySQL sandbox

Обратите внимание, что этот слайд только относится к проблемам изоляции при тестировании!
Это не относится к запуску вашего сервера.
Если у вас есть таблица A и таблица B с идентичными данными и макетом, оба должны быть разделены, иначе вы получите разные результаты.
Это не относится к сценарию, в котором у вас есть большая разделенная таблица, которая ссылается на меньшие таблицы, которые нет, потому что нет смысла разбивать небольшие таблицы.

Есть ли какое-то требование, что все таблицы должны быть разделены, когда вы разделяете одну?

Нет

Абсолютно нет проблем при смешивании секционированных и обычных таблиц в базе данных.
На самом деле, только несколько ключевых таблиц должны быть разделены, остальные не должны быть разделены.

@ Mike Purcell: разделение не предназначено для защиты данных, оно предназначено для ускорения доступа к данным, позволяя легче исключать несущественные данные из поиска.

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

Преимущества и недостатки перегородок
Разделы обычно ускоряют работу за счет увеличения использования дискового пространства (что в редких случаях может снова замедлить работу).
Также разделы имеют смысл только для таблиц с лотами строк.

...