Кластер (объект Oracle Database)

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

Кластер (англ. cluster) — в СУБД Oracle Database специализированный объект базы данных, используемый для физически совместного хранения одной или нескольких таблиц, которые часто соединяются вместе в SQL-запросах. Кластеры хранят взаимосвязанные строки разных таблиц вместе в одних и тех же блоках данных, что позволяет сократить количество операций дискового ввода-вывода и улучшить время доступа для соединений таблиц, входящих в кластер. После создания кластера в нем можно создавать таблицы. Перед тем как добавлять строки в кластеризованные таблицы необходимо создать индекс кластера.

Кластеры не влияют на проектирование модели данных приложений, их существование прозрачно для пользователей и приложений. Данные, хранящиеся в кластере, обрабатываются с помощью тех же инструкций SQL, что и данные, хранящиеся в некластеризованных таблицах.

Кластеры целесообразно использовать для хранения одной или нескольких таблиц, которые часто используются в запросах и для которых запросы часто выполняют соединение данных из нескольких связанных таблиц, либо извлекают связанные данные из одной таблицы.

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

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

Oracle Database concepts. Clusters (англ.). Stanford University. Проверено 26 февраля 2011. Архивировано 25 августа 2011 года.