|
жесткие тормоза после перехода на 11.70
|
|||
---|---|---|---|
#18+
Добрый день, ребята, помогайте плиз. После апдейта все процессы стали выполняться в 10 раз дольше,не отрабатывает ни 1 подзапрос. вот пример: select number From таблица1 t, таблица2 i Where t.поле in (select serno from таблица3 where поле1=today and поле2 in ("знач1","знач2") and поле3="знач3") and t.serno=i.serno работает этот запрос 5минут. запрос select serno from таблица3 where поле=today and поле2 in ("знач1","знач2") and поле3="знач3" отрабатывает за 2сек Если подставляю значения подзапроса и делаю запрос явно - работает 5сек select number From таблица1 t, таблица2 i Where t.поле in (820,823,25,27,130,822,834) and t.serno=i.serno В чем дело?И так в каждой процедуре практически. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2011, 12:11 |
|
жесткие тормоза после перехода на 11.70
|
|||
---|---|---|---|
#18+
LudeV, нашел ответ. после перехода статистику по всем таблицам собирали так,как сказано на ibm.com: low для всех таблиц+high там где надо на столбцы с индексами. сейчас попробовал update statistics high для всей таблицы в подзапросе - все стало норм. хотя до этого был update low для всей таблицы - не помогло ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2011, 12:18 |
|
жесткие тормоза после перехода на 11.70
|
|||
---|---|---|---|
#18+
LudeV, почему так? кто может подсказать плиз? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2011, 12:21 |
|
жесткие тормоза после перехода на 11.70
|
|||
---|---|---|---|
#18+
что почему? Почему планы запросов изменились после "update statistics high" ? Ну так и задумано ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2011, 12:28 |
|
жесткие тормоза после перехода на 11.70
|
|||
---|---|---|---|
#18+
Вы кстати тестировать апгрейды не пробовали? Помогает. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2011, 12:29 |
|
жесткие тормоза после перехода на 11.70
|
|||
---|---|---|---|
#18+
Журавлев Денис, непонятно почему low по таблице+high по столбцам с индексами было недостаточно? все заработало лишь после high на всю таблицу ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2011, 12:29 |
|
жесткие тормоза после перехода на 11.70
|
|||
---|---|---|---|
#18+
Журавлев Денис, Денис, upgrade нужно было поставить за полдня,т.к. завтра приезжал аудитор,а протестировать все операции за это время невозможно,вот поэтому смигрировали, прошли аудит и разгребаем теперь )) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2011, 12:31 |
|
жесткие тормоза после перехода на 11.70
|
|||
---|---|---|---|
#18+
LudeVЖуравлев Денис, непонятно почему low по таблице+high по столбцам с индексами было недостаточно? все заработало лишь после high на всю таблицупотому что вообще-то, так по-чесноку, high надо собирать не на индексированные поля, а на поля которые используются как предикаты. А так как документация написана для индусов, то там упрощено: типа, для индексированных полей. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2011, 12:32 |
|
жесткие тормоза после перехода на 11.70
|
|||
---|---|---|---|
#18+
LudeVLudeV, нашел ответ. после перехода статистику по всем таблицам собирали так,как сказано на ibm.com: low для всех таблиц+high там где надо на столбцы с индексами. сейчас попробовал update statistics high для всей таблицы в подзапросе - все стало норм. хотя до этого был update low для всей таблицы - не помогло 1. update statistics low не собирает распределения, это делает high или medium 2. Вы когда делали "high там где надо на столбцы с индексами" могли случайно пропустить некоторые поля, а когда указали high для всей таблицы, естественно распределения были собраны для всех полей. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2011, 12:33 |
|
жесткие тормоза после перехода на 11.70
|
|||
---|---|---|---|
#18+
Ну и конечно для предикатов, как выше заметил Денис. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2011, 12:34 |
|
жесткие тормоза после перехода на 11.70
|
|||
---|---|---|---|
#18+
LudeVЖуравлев Денис, Денис, upgrade нужно было поставить за полдня,т.к. завтра приезжал аудитор,а протестировать все операции за это время невозможно,вот поэтому смигрировали, прошли аудит и разгребаем теперь ))а аудитору не пофиг, какая версия? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2011, 12:34 |
|
жесткие тормоза после перехода на 11.70
|
|||
---|---|---|---|
#18+
Кстати. В реально мире часто встречается зависимость атрибутов. Типа все кастрюли красного цвета, а все сковородки синего. И получается что селективность для (тип= and цвет=) при перемножении селективностей получается неправильной. И mssql давно для композитных индексов собирал статистики (тип|цвет), и оракл тоже вроде начал это делать. Как там в информиксе с этим? Кто-нибудь в курсе? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2011, 12:42 |
|
жесткие тормоза после перехода на 11.70
|
|||
---|---|---|---|
#18+
всем большое спасибо! аудитору не пофиг,должна быть последняя версия СУБД и никак иначе. тема закрыта,т.к. все понял ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2011, 12:46 |
|
жесткие тормоза после перехода на 11.70
|
|||
---|---|---|---|
#18+
LudeVпосле перехода статистику по всем таблицам собирали так,как сказано на ibm.com: low для всех таблиц+high там где надо на столбцы с индексами. А можно ссылочку на такие рекомендации от ИБМ при миграции на вашу версию 11.7 ? LudeVхотя до этого был update low для всей таблицы - не помогло Для информации - в новой версии у low появились новые возможности: Data sampling for update statistics operations If you have a large index with more than 100 000 leaf pages, you can generate index statistics based on sampling when you run UPDATE STATISTICS statements in LOW mode. Gathering index statistics from sampled data can increase the speed of the update statistics operations. To enable sampling, set the USTLOW_SAMPLE configuration parameter or the USTLOW_SAMPLE option of the SET ENVIRONMENT statement. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2011, 14:20 |
|
жесткие тормоза после перехода на 11.70
|
|||
---|---|---|---|
#18+
vasilis, А можно ссылочку на такие рекомендации от ИБМ при миграции на вашу версию 11.7 ? http://publib.boulder.ibm.com/infocenter/idshelp/v117/index.jsp?topic=%2Fcom.ibm.mig.doc%2Fids_mig_015.htm пункт5 https://www-304.ibm.com/support/docview.wss?uid=swg21137764 о самой статистике ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2011, 14:43 |
|
жесткие тормоза после перехода на 11.70
|
|||
---|---|---|---|
#18+
LudeV https://www-304.ibm.com/support/docview.wss?uid=swg21137764 о самой статистике 1. Run UPDATE STATISTICS LOW on all tables in the database. 2. Run UPDATE STATISTICS MEDIUM on all columns which are in an index, but are not the first column of any index. 3. Run UPDATE STATISTICS HIGH on all columns which are the first column in an index. 4. Run UPDATE STATISTICS on all stored procedures. Это все очень старое и не меняется уже много лет (я просто ожидал увидеть какие-то новые рекомендации) Т.е. вы хотите сказать, что указанную последовательность операций регулярно выполняли на старой версии (все было нормально с производительностью) и после миграции выполнили и на новой ? И новая версия , после такого же набора операторов обновления статистики , стала тормозить? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2011, 18:45 |
|
жесткие тормоза после перехода на 11.70
|
|||
---|---|---|---|
#18+
vasilis, скрипт в старой версии содержал режим обновления low вместо medium по столбцам с индексом+в старом скрипте не было low drop distributions. раньше скрипт отрабатывал за 3часа,а после перехода стал работать 40сек,т.е. реально статистика не собиралась и параллельно с этим стало все тормозить. я думаю то,что после перехода необходимо один раз собрать статистику и потом только ее обновлять. я не оч давно работаю с informix,поэтому не знаю точно причину,но догадка в том,что новая версия не понимает старые данные по статистике или просто теперь необходимо всегда делать low drop distributions(хотя насколько я понял в это время не собираются распределения,а только статистика). сегодня попробую ночью обновить статистику по всем таблицам.посмотрю на результат и отпишусь,дальше понаблюдаю за производительностью и уже станет более ясно,что необходимо переписать скрипт или просто будет достаточно единоразового сбора статистики. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2011, 23:27 |
|
жесткие тормоза после перехода на 11.70
|
|||
---|---|---|---|
#18+
LudeV... раньше скрипт отрабатывал за 3часа,а после перехода стал работать 40сек,т.е. реально статистика не собиралась и параллельно с этим стало все тормозить. ... Скрипт какие то ошибки выдавал? В таких случаях надо смотреть что скрипт при выполнении пишет. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2011, 12:45 |
|
жесткие тормоза после перехода на 11.70
|
|||
---|---|---|---|
#18+
Andron, скрипт ошибок не выдает. просто отрабатывает за 15сек,а в логе написано много строк statistics update и больше никаких других записей нет ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2011, 14:36 |
|
жесткие тормоза после перехода на 11.70
|
|||
---|---|---|---|
#18+
уже несколько лет делаю токо простой хай сразу на все индексные столбцы больших таблиц и проблем вроде как нет так же обновлял как при переходе с 9.40 на 11.50 так и при переходе с 11.50 на 11.70 все работает прогнозируемо ... |
|||
:
Нравится:
Не нравится:
|
|||
04.11.2011, 13:50 |
|
жесткие тормоза после перехода на 11.70
|
|||
---|---|---|---|
#18+
Куликов про Db2 рассказывал про подобная фича вроде как в Informix должны были перенести. http://www.iiug.org/articles/ids_feedback_stats_integration.pdf авторКстати. В реально мире часто встречается зависимость атрибутов. Типа все кастрюли красного цвета, а все сковородки синего. И получается что селективность для (тип= and цвет=) при перемножении селективностей получается неправильной. И mssql давно для композитных индексов собирал статистики (тип|цвет), и оракл тоже вроде начал это делать. Как там в информиксе с этим? Кто-нибудь в курсе? Ресурсы по Informix ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2011, 21:51 |
|
жесткие тормоза после перехода на 11.70
|
|||
---|---|---|---|
#18+
vasilis1. Run UPDATE STATISTICS LOW on all tables in the database. 2. Run UPDATE STATISTICS MEDIUM on all columns which are in an index, but are not the first column of any index. 3. Run UPDATE STATISTICS HIGH on all columns which are the first column in an index. 4. Run UPDATE STATISTICS on all stored procedures. Это все очень старое и не меняется уже много лет (я просто ожидал увидеть какие-то новые рекомендации) А если я просто пускаю update statistics, то эти рекомендации выполнятся сервером автоматически или их надо обязательно вручную прогонять? Сильно ли улучшаться результаты по сравнению с обычным update statistics? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2011, 23:26 |
|
жесткие тормоза после перехода на 11.70
|
|||
---|---|---|---|
#18+
bk0010vasilis1. Run UPDATE STATISTICS LOW on all tables in the database. 2. Run UPDATE STATISTICS MEDIUM on all columns which are in an index, but are not the first column of any index. 3. Run UPDATE STATISTICS HIGH on all columns which are the first column in an index. 4. Run UPDATE STATISTICS on all stored procedures. Это все очень старое и не меняется уже много лет (я просто ожидал увидеть какие-то новые рекомендации) А если я просто пускаю update statistics, то эти рекомендации выполнятся сервером автоматически или их надо обязательно вручную прогонять? Сильно ли улучшаться результаты по сравнению с обычным update statistics? update statistics = UPDATE STATISTICS LOW on all tables in the database ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2011, 16:42 |
|
|
start [/forum/topic.php?desktop=1&fid=44&tid=1607237]: |
0ms |
get settings: |
26ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
54ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
509ms |
get tp. blocked users: |
3ms |
others: | 301ms |
total: | 933ms |
0 / 0 |