Секционирование
Секционирование (англ. partitioning) — разделение хранимых объектов баз данных (таких как таблиц, индексов, материализованных представлений) на отдельные части с раздельными параметрами физического хранения. Используется в целях повышения управляемости, производительности и доступности для больших баз данных.
Возможные критерии разделения данных, используемые при секционировании:
- по предопределённым диапазонам значений
- по спискам значений
- при помощи значений хэш-функций
Под композитными (составными) критериями разделения понимают последовательно применённые критерии разных типов.
Секционирование реализовано во многих реляционных СУБД, в частности в IBM DB2, Informix, Oracle Database, Teradata Database, Microsoft SQL Server, PostgreSQL, MySQL, Sybase.
Реализация в СУБД
Oracle Database
В Oracle Database секционирование позволяет большие структуры базы данных (таблицы, индексы) разбить на меньшие части, называемые разделами (англ. partition). Oracle предлагает несколько методов для различных сценариев:
- секционирование по диапазонам значений (range partitioning),
- хеш-секционирование (hash partitioning),
- секционирование по списку значений (list partitioning),
- ссылочное секционирование (reference partitioning) (начиная с версии 11g),
- секционирование по интервалу (interval partitioning) (11g),
- составное секционирование:
- диапазонное секционирование с хеш-подсекционированием (range-hash composite partitioning),
- диапазонное секционирование со списочным подсекционированием (range-list composite partitioning).
Также существует 3 типа секционированных индексов:
- локально секционированный индекс (local index), то есть секции индекса соответствуют секциям таблицы;
- глобально секционированный индекс (global partitioned index), такой индекс разбивается на секции по другим правилам, нежели сама таблица;
- глобально несекционированный индекс (global non-partitioned index), такой индекс не разбивается на секции хотя таблица разбита;
- всевозможные комбинации из этих трёх.
Informix
В Informix секционирование называется фрагментацией (англ. framentation), и также позволяет разбивать таблицы и индексы на отдельные фрагменты по разным схемам:
- круговая фрагментация,
- по выражениям,
- по списку значений,
- по интервалам.
MySQL
MySQL начиная с версии 5.1 поддерживает секционирование[1]. Поддерживаются следующие типы секционирования:
- по интервалам (range partitioning),
- по списку значений (list partitioning),
- по хешу (hash partitioning),
- по ключам (key partitioning).
Напишите отзыв о статье "Секционирование"
Примечания
- ↑ [dev.mysql.com/doc/refman/5.1/en/partitioning-overview.html 18.1. Overview of Partitioning in MySQL]
Ссылки
- [docs.oracle.com/cd/E16655_01/server.121/e17613/intro.htm Oracle VLDB and Partitioning Guide 12c Release 1] (англ.)
- [publib.boulder.ibm.com/infocenter/idshelp/v117/topic/com.ibm.ddi.doc/ids_ddi_085.htm%20 Informix Table fragmentation strategies] (англ.)
<imagemap>: неверное или отсутствующее изображение |
Для улучшения этой статьи желательно?:
|
|
Отрывок, характеризующий Секционирование
Петя стал закрывать глаза и покачиваться.Капли капали. Шел тихий говор. Лошади заржали и подрались. Храпел кто то.
– Ожиг, жиг, ожиг, жиг… – свистела натачиваемая сабля. И вдруг Петя услыхал стройный хор музыки, игравшей какой то неизвестный, торжественно сладкий гимн. Петя был музыкален, так же как Наташа, и больше Николая, но он никогда не учился музыке, не думал о музыке, и потому мотивы, неожиданно приходившие ему в голову, были для него особенно новы и привлекательны. Музыка играла все слышнее и слышнее. Напев разрастался, переходил из одного инструмента в другой. Происходило то, что называется фугой, хотя Петя не имел ни малейшего понятия о том, что такое фуга. Каждый инструмент, то похожий на скрипку, то на трубы – но лучше и чище, чем скрипки и трубы, – каждый инструмент играл свое и, не доиграв еще мотива, сливался с другим, начинавшим почти то же, и с третьим, и с четвертым, и все они сливались в одно и опять разбегались, и опять сливались то в торжественно церковное, то в ярко блестящее и победное.
«Ах, да, ведь это я во сне, – качнувшись наперед, сказал себе Петя. – Это у меня в ушах. А может быть, это моя музыка. Ну, опять. Валяй моя музыка! Ну!..»
Он закрыл глаза. И с разных сторон, как будто издалека, затрепетали звуки, стали слаживаться, разбегаться, сливаться, и опять все соединилось в тот же сладкий и торжественный гимн. «Ах, это прелесть что такое! Сколько хочу и как хочу», – сказал себе Петя. Он попробовал руководить этим огромным хором инструментов.
«Ну, тише, тише, замирайте теперь. – И звуки слушались его. – Ну, теперь полнее, веселее. Еще, еще радостнее. – И из неизвестной глубины поднимались усиливающиеся, торжественные звуки. – Ну, голоса, приставайте!» – приказал Петя. И сначала издалека послышались голоса мужские, потом женские. Голоса росли, росли в равномерном торжественном усилии. Пете страшно и радостно было внимать их необычайной красоте.
С торжественным победным маршем сливалась песня, и капли капали, и вжиг, жиг, жиг… свистела сабля, и опять подрались и заржали лошади, не нарушая хора, а входя в него.
Петя не знал, как долго это продолжалось: он наслаждался, все время удивлялся своему наслаждению и жалел, что некому сообщить его. Его разбудил ласковый голос Лихачева.
– Готово, ваше благородие, надвое хранцуза распластаете.
Петя очнулся.
– Уж светает, право, светает! – вскрикнул он.
Невидные прежде лошади стали видны до хвостов, и сквозь оголенные ветки виднелся водянистый свет. Петя встряхнулся, вскочил, достал из кармана целковый и дал Лихачеву, махнув, попробовал шашку и положил ее в ножны. Казаки отвязывали лошадей и подтягивали подпруги.