Re[5]: Insert в Oracle
От: ika Беларусь  
Дата: 26.07.06 10:08
Оценка:
Здравствуйте, Sahivi, Вы писали:
ika>>2) use prepared statemetns
ika>>3) disable indices before starting batch execution; enable them back at the finish.
S>про 3 пункт можно поподробнее?
Конечно можно. Есть таблица, в ней (весьма вероятно) пачка индексов. Когда вставляется запись, все они перестраиваются с учетом добавленной записи. Очевидно, что раз выгодней запустить такую перестройку только один раз вместо тысячи. Именно по этому я думаю и было бы полезно временно отключить индексы (или дропнуть вобще их). Когда они в конце даталоада будут восстановлены, они будут построены по последним даннгым, имеющимся в таблице.

ЗЫ: если на таблице есть триггеры, то отключать индексы нельзя (скорей всего перфоманс упадет, нужно смотреть что там за триггеры и что за индексы).

ЗЫ2: уменя нет точных метрик для сравнения. совет даю исключительно из интуитивных предположений и своих теоретичиских знаний.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.