У мене зберігається процедура, яка обрізає деякі таблиці з приблизно 1,75М рядків у кожній, перед тим як вставляти нові дані (на основі даних в інших таблицях, обчислень тощо)
Основні контури дуже прості:
- Обрізати таблиці
- Вставте 1,75М рядків «партіями» приблизно 75 000 разів.
Мені цікаво, чи варто явно переробляти індекси в будь-який час цього процесу? напр
- Обрізати таблиці
ALTER INDEX ALL ON xxx REBUILD WITH (FILLFACTOR=90)
[чи щось подібне]- Вставте 1,75М рядків
чи, можливо,
ALTER INDEX ALL ON xxx DISABLE
- Обрізати таблиці
- Вставте 1,75М рядків
ALTER INDEX ALL ON xxx REBUILD WITH (FILLFACTOR=90)
[чи щось подібне]
Будь-яка допомога вдячна ... не DBA - точніший розробник, який добре знає БД!
insert into
і на даний момент немає ніякого order by
застереження, але я можу додати, що якщо це допоможе? Ідентифікатор та код також індексуються окремо.