В оракле у меня есть куча табличек с набором индексов. Осноые действия которые с ними производятся — вставка и удаление.
По прошествию времени наблюдается снижение производмтельности при вставке или удалении.
После переноса таблички в другое табличное пространство и возвращение ее обратно, перестраиваю индексы — какое счастье, все работает с прежней скоростью (только перестройка индексов не всегдадает такой результат).
Вообще вроде понятно. При интенсивных вставках-удалениях данные у тебя фрагментируются, всякие row-chain'ы накапливаются, статистика по индексам меняется.
P.S. А что такое "Мутки"? Шутки? Муки? Утки?
Re: Мутки Oracle
От:
Аноним
Дата:
24.10.04 13:38
Оценка:
поскольку телепаты в отпуске тебе прийдется выложить планы запросов ...
Здравствуйте, prg, Вы писали:
prg> В оракле у меня есть куча табличек с набором индексов. Осноые действия которые с ними производятся — вставка и удаление. prg> По прошествию времени наблюдается снижение производмтельности при вставке или удалении. prg> После переноса таблички в другое табличное пространство и возвращение ее обратно, перестраиваю индексы — какое счастье, все работает с прежней скоростью (только перестройка индексов не всегдадает такой результат).
А>поскольку телепаты в отпуске тебе прийдется выложить планы запросов ...
В табличке 30 полей индекс по дмум полям (типы обоих полей varchar2(10)). Удалются по значениям, входящим в индекс
удаление
delete a
where a.a1 = :q
and a.a2=:w
индекс по полям a1 и a2
вставка
insert(a1,a2,....a30) value (......)
это происходит не зависимо от выбранной оптимизации RULE или CHOOSE
телепаты все еще в отпуске
я могу придумать десяток причин с такимим симптомами, скорее всего у тебя по какой-то причине со временем меняется план. а может наоборот — статисика устаревает и не собирается. врубай set autotrace on и смотри планы и статистику до и после.
не думаю что это связанно с фрагментацией, но в принципе можно поробывать хинт для insert который добавляет записи в конец табличеки /*APPEND*/ кажется ... непомню.
Планы меняются вряд ли (особенно с RULE), а вот сколько ресурсов потребляют запросы до и после, сколько даных перебирают, это интересно. Имея статистику, можно и дальше подумать.
Здравствуйте, Аноним, Вы писали:
А>телепаты все еще в отпуске А>я могу придумать десяток причин с такимим симптомами, скорее всего у тебя по какой-то причине со временем меняется план. а может наоборот — статисика устаревает и не собирается. врубай set autotrace on и смотри планы и статистику до и после.
Статистику собирал и удалял, особой роли не играло
Re[5]: Мутки Oracle
От:
Аноним
Дата:
27.10.04 07:26
Оценка:
prg> Статистику собирал и удалял, особой роли не играло
Здравствуйте, prg, Вы писали:
prg> :)) Осноые действия которые с ними производятся — вставка и удаление. prg> По прошествию времени наблюдается снижение производмтельности при вставке или удалении. prg> После переноса таблички в другое табличное пространство и возвращение ее обратно .... все работает с прежней скоростью (только перестройка индексов не всегдадает такой результат).
Это симптомы data block fragmentation, найди статью "All About Oracle Database Fragmentation" by Shallahamer — там сказано что делать.
Тут поминали row-chain так при вставке-удалении row-chain'ы (которые — migrated )не появляются — row-chain'ы повляются только при update varcah'-ов.