2016-12-13 2 views
0

У меня секционированная таблицы «Аварийные сигналы», как следующиеУдаление некоторых данных из раздела повлияет на локальный индекс?

  • разделенный по диапазону (вариант); версия: 1,2,3 ..
  • каждый раздел имеет локальный индекс по версии
  • каждого раздела имеет сочетание столбцов в качестве локальных индексов
  • версии локального индекса
  • Ни один глобального индекса

из-за некоторые бизнес-ограничения,

  • Мне нужно удалить некоторые данные из каждой версии (но не весь раздел данных).
  • обновление не будет происходить со старыми версиями, только выбрать
  • на ежедневной основе, я вставляя новые данные версии

Так для этого я буду удалять следующим образом:

delete /*+ full(alarms) parallel(alarms,4)*/ from alarms where version <= (number) and alarm_type = 'type1'; 

И это не удалит весь раздел. Но может быть каждый месяц, этот раздел будет пустым.

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

Мой вопрос: До раздела не является пустым

  • это может повлиять на производительность?
  • Нужно ли мне перестроить индекс, каждый из них удаляет?

ответ

0
  1. Это может повлиять на производительность?

Я не уверен, как вы это понимаете. Если вы имеете в виду, что «удаление данных из таблицы повлияет на других одновременных пользователей этой таблицы», ответ да, хотя невозможно указать, какова будет степень воздействия. Если вы имеете в виду, что «удаление данных из таблицы имеет долгосрочное влияние на доступ к этой таблице», мой ответ заключается в том, что должно быть очень мало долгосрочных последствий.

  1. Нужно ли перестраивать индекс, каждый из них удаляется?

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

Удачи.

+0

Спасибо, Боб! для первой точки, что я имел в виду, это производительность операций dml, специально выбирая данные из разбитого раздела. и в случае удаления некоторых других данных из того же раздела .. и так далее. Во-вторых, ваш ответ на этот вопрос! –

+0

Я думаю, что также сбор статистики для этой таблицы может помочь на ежедневной основе, так как будет создана новая версия (раздел), и старые разделы могут обновляться/удаляться ежедневно –

+0

. Вы должны регулярно собирать статистику на любой таблице, которая имеет значительные изменения к нему. –

Смежные вопросы