Деактивация локальных индексов
Поддержка и обслуживание локальных индексов со временем может требовать все больше и больше системных ресурсов, и ресурсов базы данных. Кроме того, наличие редко используемых индексов в таблице может значительно снижать общую производительность, вызывая излишнюю нагрузку.
Вы должны деактивировать локальный индекс в таких ситуациях, как:
- Приложение больше не использует локальный индекс. В этом случае такой индекс необходимо деактивировать и удалить.
- Вам необходимо загрузить большой объем данных в секционированную таблицу. Соответственно, локальные индексы необходимо деактивировать для ускорения процесса загрузки.
- Необходимо выполнить перестроение локального индекса. В этом случае такой индекс сначала необходимо деактивировать, а затем выполнить его активацию.
- Если локальный индекс редко используется, но вы не хотите его удалять. Соответственно, его достаточно просто деактивировать.
Для деактивации локального индекса в секции таблицы в онлайн применяется утилита
PROUTIL IDXDEACTIVATE:
proutil db-name -C idxdeactivate {index table-name.index-name | table table-name} partition partition-name
Примечания:
- Если вы используете параметр index, то вы должны использовать параметр partition. Только индексная секция, ассоциированная с табличной секцией, может быть деактивирована.
- Если вы используете параметр table, то вы должны использовать и параметр partition. В этом случае все локальные индексы, ассоциированные с табличной секцией, за исключением первичного индекса, будут деактивированы.
Пример 1. Таблица Order имеет локальный индекс OrderDateLocalIdx, который редко используется – необходимо его деактивировать. Следующий пример команды PROUTIL IDXDEACTIVATE выполнит деактивацию индекса для секции Order-1:
proutil sports -C idxdeactivate index order.orderdatelocalidx partition order-1
Пример 2. Таблица Order имеет два локальных индекса, OrderDateLocalIdx и OrderDateCustNumLocalIdx, которые используются редко – оба индекса необходимо деактивировать. Следующий пример команды PROUTIL IDXDEACTIVATE выполнит их деактивацию для секции Order-2:
proutil sports -C idxdeactivate table order partition order-2