Уменьшение Сегментов

Рубрика: Контроль Пространства

Диаграмма на рисунке описывает две фазы операции сжатия таблицы.

Уменьшение Сегментов

Первая фаза делает уплотнение. Во время этой фазы строки перемещаются в левую часть сегмента, насколько это возможно. Внутренне, строки перемещаются пакетами, чтобы избежать проблемы блокировки.

После того, как строки были перемещены, запускается вторая фаза операции уменьшения. Во время этой фазы корректируется граница использованного пространства (HWM), и неиспользуемое место освобождается. Пункт COMPACT полезен, если у Вас есть продолжительные запросы, которые могли бы распространиться на операцию уменьшения и попытались читать из блоков, которые были освобождены. Когда Вы определяете пункт SHRINK SPACE COMPACT, прогресс операции уменьшения сохраняется в блоках битового массива соответствующего сегмента. Это означает, что в следующий раз операция уменьшения выполняется на том же самом сегменте, сервер базы данных Oracle помнит то, что уже было сделано. Можно тогда перезапустить предложение SHRINK SPACE без пункта COMPACT во время непиковых часов, чтобы завершить вторую фазу.

Результаты Операции Уменьшения

  • Улучшенная производительность и использование пространства

  • Индексы сохраняются

  • Триггеры не выполняются

  • Количество мигрировавших строк может быть сокращено.

  • Пересоздание вторичных индексов на IOT рекомендуется

Результаты Операции Уменьшения

Уменьшение разреженного сегмента улучшает производительность сканирования и операций DML на этом сегменте. Это потому, что приходится рассматривать меньше блоков, после того, как сегмент был уменьшен. Это - особенно справедливо для:

  • Полных сканирований таблиц (небольшого числа более плотных блоков)

  • Лучшего индексного доступа (меньше I/O на сканированиях диапазонов ROWID из-за более компактного дерева),

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

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

Фактическая операция уменьшения обрабатывается внутренне как операция INSERT/DELETE. Однако, какие-либо триггеры DML не выполняются, потому что сами данные не изменяются.

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

Отметьте: Рекомендуется перестроить вторичные индексы для индексно-организованной таблицы (IOT) после операции уменьшения.

Далее: Контроль FRA и Преимущества Использования Быстрой Области Восстановления

Смотрите также
Комментарии
Написать

(обязательно)

(обязательно)

Это не спам (обязательно)