|
10.02.2006, 18:07 | #1 |
Участник
|
Отключение index в LedgerJournalTrans
Данная таблица содержит в себе несколько сотен тысяч записей. При импорте через код дополнительныx транзакций, на выполнение метода update() уxодит почти минута-две на каждую запись. Есть подозрение что это из за перестройки системой индексов на лету.
Вопрос: если во время выполнения кода импорта программно отключать /включать индексы, какие подводные камни вообще и при наличии пользователей работающиx в системе ? Спасибо.
__________________
_databaseTransDelete ... bl@$ ! |
|
10.02.2006, 22:13 | #2 |
Administrator
|
Не совсем ответ на Ваш вопрос (по поводу индексов), однако небольшое замечание - которое можно принять к сведению. Если речь идет об импорте данных - т.е. о вставке данных - т.е. исполнения метода insert - то обратите внимание на класс \System Documentation\Classes\RecordInsertList. Пример - там же. Весьма ускоряет процесс вставки. Правда неактуален в случае обновления данных, т.е. исполнения метода update.
Если говорить про обновление - то напрашивается вопрос - а как Вы импортируете данные? (собсно - откуда вызов метода update при импорте) ? По поводу индексов. Если Вы грешите на индексы - закачайте эту таблицу напрямую в БД, минуя Аксапту (только ради эксперимента; без RecId). Если скорость существенно не изменится - значит действительно дело в индексах. Просто проблема может быть и не в них.
__________________
Возможно сделать все. Вопрос времени |
|
|
За это сообщение автора поблагодарили: Lokis (1), DTD (1). |