Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Informix Новый топик    Ответить
 жесткие тормоза после перехода на 11.70  [new]
LudeV
Member

Откуда:
Сообщений: 416
Добрый день,

ребята, помогайте плиз. После апдейта все процессы стали выполняться в 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


В чем дело?И так в каждой процедуре практически.
2 ноя 11, 12:11    [11538059]     Ответить | Цитировать Сообщить модератору
 Re: жесткие тормоза после перехода на 11.70  [new]
LudeV
Member

Откуда:
Сообщений: 416
LudeV,

нашел ответ.

после перехода статистику по всем таблицам собирали так,как сказано на ibm.com: low для всех таблиц+high там где надо на столбцы с индексами.

сейчас попробовал update statistics high для всей таблицы в подзапросе - все стало норм.

хотя до этого был update low для всей таблицы - не помогло
2 ноя 11, 12:18    [11538118]     Ответить | Цитировать Сообщить модератору
 Re: жесткие тормоза после перехода на 11.70  [new]
LudeV
Member

Откуда:
Сообщений: 416
LudeV,

почему так?

кто может подсказать плиз?
2 ноя 11, 12:21    [11538149]     Ответить | Цитировать Сообщить модератору
 Re: жесткие тормоза после перехода на 11.70  [new]
Журавлев Денис
Member

Откуда: St.John,NB,CA
Сообщений: 5532
что почему?
Почему планы запросов изменились после "update statistics high" ? Ну так и задумано
2 ноя 11, 12:28    [11538206]     Ответить | Цитировать Сообщить модератору
 Re: жесткие тормоза после перехода на 11.70  [new]
Журавлев Денис
Member

Откуда: St.John,NB,CA
Сообщений: 5532
Вы кстати тестировать апгрейды не пробовали? Помогает.
2 ноя 11, 12:29    [11538218]     Ответить | Цитировать Сообщить модератору
 Re: жесткие тормоза после перехода на 11.70  [new]
LudeV
Member

Откуда:
Сообщений: 416
Журавлев Денис,

непонятно почему low по таблице+high по столбцам с индексами было недостаточно? все заработало лишь после high на всю таблицу
2 ноя 11, 12:29    [11538225]     Ответить | Цитировать Сообщить модератору
 Re: жесткие тормоза после перехода на 11.70  [new]
LudeV
Member

Откуда:
Сообщений: 416
Журавлев Денис,

Денис,
upgrade нужно было поставить за полдня,т.к. завтра приезжал аудитор,а протестировать все операции за это время невозможно,вот поэтому смигрировали, прошли аудит и разгребаем теперь ))
2 ноя 11, 12:31    [11538237]     Ответить | Цитировать Сообщить модератору
 Re: жесткие тормоза после перехода на 11.70  [new]
Журавлев Денис
Member

Откуда: St.John,NB,CA
Сообщений: 5532
LudeV
Журавлев Денис,

непонятно почему low по таблице+high по столбцам с индексами было недостаточно? все заработало лишь после high на всю таблицу
потому что вообще-то, так по-чесноку, high надо собирать не на индексированные поля, а на поля которые используются как предикаты. А так как документация написана для индусов, то там упрощено: типа, для индексированных полей.

Сообщение было отредактировано: 2 ноя 11, 12:45
2 ноя 11, 12:32    [11538252]     Ответить | Цитировать Сообщить модератору
 Re: жесткие тормоза после перехода на 11.70  [new]
Andron
Member

Откуда: Cherepovets
Сообщений: 1816
LudeV
LudeV,

нашел ответ.

после перехода статистику по всем таблицам собирали так,как сказано на ibm.com: low для всех таблиц+high там где надо на столбцы с индексами.

сейчас попробовал update statistics high для всей таблицы в подзапросе - все стало норм.

хотя до этого был update low для всей таблицы - не помогло


1. update statistics low не собирает распределения, это делает high или medium
2. Вы когда делали "high там где надо на столбцы с индексами" могли случайно пропустить некоторые поля, а когда указали high для всей таблицы, естественно распределения были собраны для всех полей.
2 ноя 11, 12:33    [11538269]     Ответить | Цитировать Сообщить модератору
 Re: жесткие тормоза после перехода на 11.70  [new]
Andron
Member

Откуда: Cherepovets
Сообщений: 1816
Ну и конечно для предикатов, как выше заметил Денис.
2 ноя 11, 12:34    [11538282]     Ответить | Цитировать Сообщить модератору
 Re: жесткие тормоза после перехода на 11.70  [new]
Журавлев Денис
Member

Откуда: St.John,NB,CA
Сообщений: 5532
LudeV
Журавлев Денис,

Денис,
upgrade нужно было поставить за полдня,т.к. завтра приезжал аудитор,а протестировать все операции за это время невозможно,вот поэтому смигрировали, прошли аудит и разгребаем теперь ))
а аудитору не пофиг, какая версия?
2 ноя 11, 12:34    [11538283]     Ответить | Цитировать Сообщить модератору
 Re: жесткие тормоза после перехода на 11.70  [new]
Журавлев Денис
Member

Откуда: St.John,NB,CA
Сообщений: 5532
Кстати. В реально мире часто встречается зависимость атрибутов. Типа все кастрюли красного цвета, а все сковородки синего. И получается что селективность для (тип= and цвет=) при перемножении селективностей получается неправильной. И mssql давно для композитных индексов собирал статистики (тип|цвет), и оракл тоже вроде начал это делать. Как там в информиксе с этим? Кто-нибудь в курсе?
2 ноя 11, 12:42    [11538343]     Ответить | Цитировать Сообщить модератору
 Re: жесткие тормоза после перехода на 11.70  [new]
LudeV
Member

Откуда:
Сообщений: 416
всем большое спасибо!

аудитору не пофиг,должна быть последняя версия СУБД и никак иначе.

тема закрыта,т.к. все понял
2 ноя 11, 12:46    [11538401]     Ответить | Цитировать Сообщить модератору
 Re: жесткие тормоза после перехода на 11.70  [new]
vasilis
Member

Откуда: Украина, Киев
Сообщений: 2205
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.
2 ноя 11, 14:20    [11539497]     Ответить | Цитировать Сообщить модератору
 Re: жесткие тормоза после перехода на 11.70  [new]
LudeV
Member

Откуда:
Сообщений: 416
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 о самой статистике
2 ноя 11, 14:43    [11539769]     Ответить | Цитировать Сообщить модератору
 Re: жесткие тормоза после перехода на 11.70  [new]
vasilis
Member

Откуда: Украина, Киев
Сообщений: 2205
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.

Это все очень старое и не меняется уже много лет (я просто ожидал увидеть какие-то новые рекомендации)

Т.е. вы хотите сказать, что указанную последовательность операций регулярно выполняли на старой версии (все было нормально с производительностью) и после миграции выполнили и на новой ?
И новая версия , после такого же набора операторов обновления статистики , стала тормозить?
2 ноя 11, 18:45    [11542171]     Ответить | Цитировать Сообщить модератору
 Re: жесткие тормоза после перехода на 11.70  [new]
LudeV
Member

Откуда:
Сообщений: 416
vasilis,
скрипт в старой версии содержал режим обновления low вместо medium по столбцам с индексом+в старом скрипте не было low drop distributions.

раньше скрипт отрабатывал за 3часа,а после перехода стал работать 40сек,т.е. реально статистика не собиралась и параллельно с этим стало все тормозить.

я думаю то,что после перехода необходимо один раз собрать статистику и потом только ее обновлять.

я не оч давно работаю с informix,поэтому не знаю точно причину,но догадка в том,что новая версия не понимает старые данные по статистике или просто теперь необходимо всегда делать low drop distributions(хотя насколько я понял в это время не собираются распределения,а только статистика).

сегодня попробую ночью обновить статистику по всем таблицам.посмотрю на результат и отпишусь,дальше понаблюдаю за производительностью и уже станет более ясно,что необходимо переписать скрипт или просто будет достаточно единоразового сбора статистики.
2 ноя 11, 23:27    [11543257]     Ответить | Цитировать Сообщить модератору
 Re: жесткие тормоза после перехода на 11.70  [new]
Andron
Member

Откуда: Cherepovets
Сообщений: 1816
LudeV
...
раньше скрипт отрабатывал за 3часа,а после перехода стал работать 40сек,т.е. реально статистика не собиралась и параллельно с этим стало все тормозить.
...


Скрипт какие то ошибки выдавал? В таких случаях надо смотреть что скрипт при выполнении пишет.
3 ноя 11, 12:45    [11545549]     Ответить | Цитировать Сообщить модератору
 Re: жесткие тормоза после перехода на 11.70  [new]
LudeV
Member

Откуда:
Сообщений: 416
Andron,

скрипт ошибок не выдает.

просто отрабатывает за 15сек,а в логе написано много строк statistics update и больше никаких других записей нет
3 ноя 11, 14:36    [11546440]     Ответить | Цитировать Сообщить модератору
 Re: жесткие тормоза после перехода на 11.70  [new]
яфшуеі
Guest
уже несколько лет делаю токо простой хай сразу на все индексные столбцы больших таблиц
и проблем вроде как нет

так же обновлял как при переходе с 9.40 на 11.50 так и при переходе с 11.50 на 11.70
все работает прогнозируемо
4 ноя 11, 13:50    [11550904]     Ответить | Цитировать Сообщить модератору
 Re: жесткие тормоза после перехода на 11.70  [new]
xz321
Guest
Куликов про Db2 рассказывал про подобная фича вроде как в Informix должны были перенести.
http://www.iiug.org/articles/ids_feedback_stats_integration.pdf

автор
Кстати. В реально мире часто встречается зависимость атрибутов. Типа все кастрюли красного цвета, а все сковородки синего. И получается что селективность для (тип= and цвет=) при перемножении селективностей получается неправильной. И mssql давно для композитных индексов собирал статистики (тип|цвет), и оракл тоже вроде начал это делать. Как там в информиксе с этим? Кто-нибудь в курсе?


Ресурсы по Informix
5 ноя 11, 21:51    [11553774]     Ответить | Цитировать Сообщить модератору
 Re: жесткие тормоза после перехода на 11.70  [new]
bk0010
Member

Откуда:
Сообщений: 5002
vasilis
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.

Это все очень старое и не меняется уже много лет (я просто ожидал увидеть какие-то новые рекомендации)

А если я просто пускаю update statistics, то эти рекомендации выполнятся сервером автоматически или их надо обязательно вручную прогонять? Сильно ли улучшаться результаты по сравнению с обычным update statistics?
5 ноя 11, 23:26    [11553951]     Ответить | Цитировать Сообщить модератору
 Re: жесткие тормоза после перехода на 11.70  [new]
Тан
Member

Откуда: Череповец
Сообщений: 349
bk0010
vasilis
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.

Это все очень старое и не меняется уже много лет (я просто ожидал увидеть какие-то новые рекомендации)

А если я просто пускаю update statistics, то эти рекомендации выполнятся сервером автоматически или их надо обязательно вручную прогонять? Сильно ли улучшаться результаты по сравнению с обычным update statistics?

update statistics = UPDATE STATISTICS LOW on all tables in the database
7 ноя 11, 16:42    [11559322]     Ответить | Цитировать Сообщить модератору
Все форумы / Informix Ответить