oss
Дата: 02.10.2005 02:31:37
Есть база под Яфилом, работает уже года два. Один-два раза в месяц, я делаю дамп базы ввиде sql файла (В ДАМП ВХОДЯТ ВСЕ МЕТАОБЪЕКТЫ И ДАННЫЕ), а потом создаю из этого файла базу, тем самым избаляюсь от мусора (объем уменьшается где-то на 10-20 метров). Но последние полгода стал замечать что очень тормозить стали Insert'ы, таблицы куда они делаются имеют по 50-70 тыс записей и еще связаны ключами с 5-7 таблицами.
Вопрос в том, как можно уменьшить время insert'ов ?
AndriyKo
Дата: 03.10.2005 03:12:22
oss |
до обработки база была 100мб, после стала 80мб. и уже очищенная первым способом, после b/r она стала 85мб! |
5 метров, что, сильно важно ? А инсерт тормозит, видимо, из-за кривоватого кода клиента. Вкратце, инсертить нужно препаренными параметризованными запросами, и коммит делать один раз на 1000-2000 записей. Самый же быстрый способ инсерта - через External tables.
Гаджимурадов Рустам
Дата: 03.10.2005 03:15:03
Ну 5 мегабайт ниоткуда не могли взяться.
Наверное ты поработал с БД - оттуда и взялись твои лишние меги.
Или бэкап снимал при подключенных пользователях. Или еще что-нибудь.
Просто твой случай - типичный бекап-рестор (лучше без свипа кстати).
Отресторенная БД должна мало отличаться от твоей "новосозданной" по скрипту.