Jump to content

Раздел (база данных)

Параметры секционирования таблицы в MySQL в среде инструмента администратора .

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

Критерии разделения [ править ]

Современные высокопроизводительные системы управления реляционными базами данных предусматривают различные критерии разделения базы данных. Они берут ключ разделения и назначают раздел на основе определенных критериев. Некоторые общие критерии включают в себя:

  • Разделение диапазона : выбирает раздел, определяя, находится ли ключ разделения в определенном диапазоне. Примером может быть раздел для всех строк «zipcode» , где столбец имеет значение от 70 000 до 79 999. Он распределяет кортежи на основе интервалов значений (диапазонов) некоторых атрибутов. Помимо поддержки запросов точного соответствия (как при хешировании), он хорошо подходит для запросов диапазона. Например, запрос с предикатом «A между A1 и A2» может обрабатываться единственным узлом(ами), содержащим кортежи.
  • Разделение списка : разделу присваивается список значений. Если ключ разделения имеет одно из этих значений, раздел выбирается. Например, все строки, в которых указан столбец Country либо Iceland, Norway, Sweden, Finland или Denmark может построить раздел для стран Северной Европы .
  • Составное секционирование : позволяет использовать определенные комбинации вышеуказанных схем секционирования, например, сначала применяя секционирование по диапазону, а затем хеш-секционирование. Согласованное хеширование можно рассматривать как сочетание хеша и разделения списков, при котором хеш уменьшает пространство ключей до размера, который можно перечислить.
  • Циклическое секционирование : самая простая стратегия, обеспечивающая равномерное распределение данных. С n перегородки, iкортеж в порядке вставки назначен разделу (i mod n). Эта стратегия позволяет осуществлять последовательный доступ к отношению параллельно. Однако прямой доступ к отдельным кортежам на основе предиката требует доступа ко всему отношению.
  • Хэш-разделение : применяет хеш-функцию к некоторому атрибуту, который дает номер раздела. Эта стратегия позволяет обрабатывать запросы точного соответствия по атрибуту выбора ровно одним узлом, а все остальные запросы обрабатывать всеми узлами параллельно.

Методы разделения [ править ]

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

Горизонтальное разделение [ править ]

Горизонтальное секционирование предполагает размещение разных строк в разных таблицах. Например, клиенты с почтовыми индексами менее 50 000 хранятся в Customers East, а клиенты с почтовыми индексами больше или равными 50 000 — в CustomersWest. Тогда двумя таблицами разделов будут Customers East и CustomersWest, а для обеих из них может быть создано представление с объединением , чтобы обеспечить полное представление обо всех клиентах.

Вертикальное разделение [ править ]

Вертикальное секционирование предполагает создание таблиц с меньшим количеством столбцов и использование дополнительных таблиц для хранения оставшихся столбцов. [1] Обычно эта практика известна как нормализация . Однако вертикальное секционирование расширяет возможности и секционирует столбцы, даже если они уже нормализованы. Этот тип разделения также называется «разделением строк», поскольку строки разбиваются по столбцам и могут выполняться явно или неявно. Для реализации вертикального секционирования могут использоваться отдельные физические машины: например, хранение редко используемых или очень широких столбцов, занимающих значительный объем памяти, на другой машине является методом вертикального секционирования. Распространенной формой вертикального секционирования является разделение статических данных от динамических, поскольку доступ к первым осуществляется быстрее, чем ко вторым, особенно для таблиц, в которых динамические данные используются не так часто, как статические. Создание представления для двух вновь созданных таблиц восстанавливает исходную таблицу с потерей производительности, но доступ только к статическим данным покажет более высокую производительность. можно Столбчатую базу данных рассматривать как базу данных, разделенную по вертикали до тех пор, пока каждый столбец не будет сохранен в отдельной таблице.

См. также [ править ]

Ссылки [ править ]

  1. ^ Jump up to: Перейти обратно: а б «Алгоритмы вертикального секционирования для проектирования баз данных» , Шамкант Навате, Стефано Кери, Джио Видерхольд и Джингли Доу, Стэнфордский университет, 1984 г.
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: a3c9c76d9756aecea95fdcb9f68632ed__1676714160
URL1:https://arc.ask3.ru/arc/aa/a3/ed/a3c9c76d9756aecea95fdcb9f68632ed.html
Заголовок, (Title) документа по адресу, URL1:
Partition (database) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)