объяснение разделения базы данных - PullRequest
2 голосов
/ 15 января 2011

Я только что прочитал о разделении базы данных и все еще не совсем уверен.Так что кто-нибудь, пожалуйста, дайте мне некоторые объяснения о том, что изменилось с точки зрения хранения на диске (например, файл данных, индексный файл, ...) за разделение базы данных, за и против.Я предпочитаю MySQL с innodb, но для сравнения приветствуется другой БД.

1 Ответ

1 голос
/ 15 января 2011

Горизонтальное разбиение позволяет вам разделить таблицу на различные «разделы», хотя таблица выглядит как единая единая сущность.

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

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

...