Как увеличить скорость вставки в Firebird 1.5
Как увеличить скорость вставки в Firebird 1.5
Машина P IV 2.8 памяти 512
Вставка примерно 3000 записей занимает 6 минут.
Уважаемые гуру, как можно уменьшить это время - что то мне говорит о том, что это время очень большое.
Работа идет через OLE DB через free IB Provider.
Желательно уменьшить это время - но я не знаю как. Авто коммит отключали - prepare перед вставкой делали. Ничего не помогает.
Вставка примерно 3000 записей занимает 6 минут.
Уважаемые гуру, как можно уменьшить это время - что то мне говорит о том, что это время очень большое.
Работа идет через OLE DB через free IB Provider.
Желательно уменьшить это время - но я не знаю как. Авто коммит отключали - prepare перед вставкой делали. Ничего не помогает.
Re: Как увеличить скорость вставки в Firebird 1.5
Это ж... Это ж... Жестокое насилие на ж-ю Василия (С) Она должна занимать нуу... нуу... 0.3 сек максимум. Это если в таблицу без индексов, с одним PK и чиста серверными средствами, то есть в одной SP. Так штаа... Не знаю даже где искать. Мысли скачут как зайцы. От мегатонн мусора в таблице и астрономического разрыва OAT - Next, через таблицу немерянной ширины и длины, увешанную по самое небалуй индексами по полям типа "Да/Нет", до включенного журналирования файла базы средствами оси по каждому изменению.DonMiguel писал(а):Машина P IV 2.8 памяти 512
Вставка примерно 3000 записей занимает 6 минут.
Вот и я в непонятках - таблица аж из 6 полей - 4 из них внешние ключи, один PK и поле факта. Во всем естественно составлен индекс. Но даже тут не должно быть такой низкой производительности. Базу бекапили рестоили - бесполезно.
Все поля многозначные в ссмыле не да/нет, хотя по всем 4 уникальный индекс такое может давать?
Более того, таблица ПУСТАЯ перед вставкой.
Все поля многозначные в ссмыле не да/нет, хотя по всем 4 уникальный индекс такое может давать?
Более того, таблица ПУСТАЯ перед вставкой.
Разобрались в чем дело - разработчик клиента использовал куросоры обнонаправленные и в результате получилось учень весело.
1) проход берем первую запись из источника
2) проход фетчим 2 записи
3) проход фетчим 3 записи
-------
ну и так далее в арифметичской прогресии (спасибо не геометрической) - после устранения проблемы все (заливка плюс обработка) стало занимать 15 секунд.
<offtop>
блин взбаламутили - аж два гуру местного пошиба пяткой в грудь стучали на тему что вставка тормозит... любители VB блин
пришлось цельну прогу на дельфях писать, чтобы показать, что вставка 3000 записей 2 секунды при самом плохом раскладе
</offtop>
1) проход берем первую запись из источника
2) проход фетчим 2 записи
3) проход фетчим 3 записи
-------
ну и так далее в арифметичской прогресии (спасибо не геометрической) - после устранения проблемы все (заливка плюс обработка) стало занимать 15 секунд.
<offtop>

пришлось цельну прогу на дельфях писать, чтобы показать, что вставка 3000 записей 2 секунды при самом плохом раскладе
</offtop>