Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 совершенно не понятное поведение сервера  [new]
kamf_
Member

Откуда:
Сообщений: 15
проявление проблемы: начиная снекоторого момента времени резко упала производительность работы и резко увеличилась загрузка процессора, при анализе выяснилось что содержимое хранимых процедур выполненое из QA показывает нормальный план выполнения (с использованием индексов), а при вызове самой хранимой процедуры в плане выполнения используется сканирование кластерного индекса (существующие индексы не используются). Это не единичная процедура, явление носит массовый характер. Единожды помог shrink с преремещение страниц. Положительный эффект продолжался неделю, больше не помогает. Есть ли мнения по этому поводу?
1 дек 05, 15:27    [2131479]     Ответить | Цитировать Сообщить модератору
 Re: совершенно не понятное поведение сервера  [new]
Timon
Member

Откуда: Dushanbe TJK
Сообщений: 2688
select @@version
Покажите.

Maintance Plan у Вас работает?
1 дек 05, 15:30    [2131512]     Ответить | Цитировать Сообщить модератору
 Re: совершенно не понятное поведение сервера  [new]
kamf_
Member

Откуда:
Сообщений: 15
Microsoft SQL Server 2000 - 8.00.760 (Intel X86) Dec 17 2002 14:22:05 Copyright (c) 1988-2003 Microsoft Corporation Enterprise Edition on Windows NT 5.0 (Build 2195: Service Pack 3)

plan не работает.
1 дек 05, 15:40    [2131584]     Ответить | Цитировать Сообщить модератору
 Re: совершенно не понятное поведение сервера  [new]
Crimean
Member

Откуда:
Сообщений: 13148
Раз в неделю - реиндекс. Раз в день - обновление статистики. Это минимум. Ну и не надо приравнивать ожидаемые планы к реальным планам.
Да! Не ставьте филлфактор отличным от 0 (или 100)! Хотя Maintance Plan по дефолту поставит 90 (10% free) - переставьте или в 100 или в "keep origin".
1 дек 05, 16:18    [2131804]     Ответить | Цитировать Сообщить модератору
 Re: совершенно не понятное поведение сервера  [new]
kamf_
Member

Откуда:
Сообщений: 15
Все это делается!
1 дек 05, 16:27    [2131851]     Ответить | Цитировать Сообщить модератору
 Re: совершенно не понятное поведение сервера  [new]
Glory
Member

Откуда:
Сообщений: 104760
содержимое хранимых процедур выполненое из QA показывает нормальный план выполнения (с использованием индексов), а при вызове самой хранимой процедуры в плане выполнения используется сканирование кластерного индекса (существующие индексы не используются).
Разные SET установки в QA, процедуре и коннекте клиента ???
1 дек 05, 16:30    [2131874]     Ответить | Цитировать Сообщить модератору
 Re: совершенно не понятное поведение сервера  [new]
Prolog
Member

Откуда: Москва
Сообщений: 2791
kamf_
Единожды помог shrink с преремещение страниц. Положительный эффект продолжался неделю, больше не помогает.
Есть ли кластерные индексы на ваших таблицах? Иначе реиндекс не будет столь эффективным.
1 дек 05, 16:31    [2131884]     Ответить | Цитировать Сообщить модератору
 Re: совершенно не понятное поведение сервера  [new]
kamf_
Member

Откуда:
Сообщений: 15
Установки одинаковые, основной внешний фактор проявления - лавинообразное увеличение загрузки процессора и многократное падение производительности (~10 раз).
1 дек 05, 16:34    [2131911]     Ответить | Цитировать Сообщить модератору
 Re: совершенно не понятное поведение сервера  [new]
kamf_
Member

Откуда:
Сообщений: 15
Кластерные индексы есть практически на каждой таблице.
1 дек 05, 16:36    [2131922]     Ответить | Цитировать Сообщить модератору
 Re: совершенно не понятное поведение сервера  [new]
Glory
Member

Откуда:
Сообщений: 104760
лавинообразное увеличение загрузки процессора
Из-за чего ?
1 дек 05, 16:37    [2131931]     Ответить | Цитировать Сообщить модератору
 Re: совершенно не понятное поведение сервера  [new]
Prolog
Member

Откуда: Москва
Сообщений: 2791
Памяти хватает? Каков рост таблиц базы по сравнению с прошлым? Каков рамер таблиц в настоящее время?
1 дек 05, 16:39    [2131944]     Ответить | Цитировать Сообщить модератору
 Re: совершенно не понятное поведение сервера  [new]
kamf_
Member

Откуда:
Сообщений: 15
По моему мнению (согласну плану выполнения) из за того, что ХП перестали использовать существующие индексы и используют сканирование кластерного индекса. QA выдает 2 различных плана выполнения: ХП - сканирование, те же операторы развернутые в виде скрипта дают нормальный план выполнения( с использованием индексного поиска )
1 дек 05, 16:43    [2131981]     Ответить | Цитировать Сообщить модератору
 Re: совершенно не понятное поведение сервера  [new]
kamf_
Member

Откуда:
Сообщений: 15
Явление произошло скачкообразно. Есть четкий промежуток в течении часа, на его входе - нормальное поведение, на выходе - тормоза.
1 дек 05, 16:45    [2131998]     Ответить | Цитировать Сообщить модератору
 Re: совершенно не понятное поведение сервера  [new]
Prolog
Member

Откуда: Москва
Сообщений: 2791
Пропишите хинт на индекс в хранимой процедуре.
1 дек 05, 16:45    [2132001]     Ответить | Цитировать Сообщить модератору
 Re: совершенно не понятное поведение сервера  [new]
Glory
Member

Откуда:
Сообщений: 104760
По моему мнению (согласну плану выполнения) из за того, что ХП перестали использовать существующие индексы и используют сканирование кластерного индекса.
Как то я вас не пойму.
Нагрузка на сервер повышается из-за изменения плана и влечет за собой изменения плана ?
"Установки одинаковые, основной внешний фактор проявления - лавинообразное увеличение загрузки процессора "
1 дек 05, 16:46    [2132007]     Ответить | Цитировать Сообщить модератору
 Re: совершенно не понятное поведение сервера  [new]
kamf_
Member

Откуда:
Сообщений: 15
Хинт в хранимой процедуре пробовал - помогает. Но не припишешь же хинты на ~1000 ХП приложения
1 дек 05, 16:49    [2132019]     Ответить | Цитировать Сообщить модератору
 Re: совершенно не понятное поведение сервера  [new]
kamf_
Member

Откуда:
Сообщений: 15
Я думаю, нагрузка на сервер повышается из-за появившегося сканирования
1 дек 05, 16:50    [2132026]     Ответить | Цитировать Сообщить модератору
 Re: совершенно не понятное поведение сервера  [new]
Glory
Member

Откуда:
Сообщений: 104760
kamf_
Я думаю, нагрузка на сервер повышается из-за появившегося сканирования

Если до определенного момента сканирования не было, а потом оно появилось, то значит план процедуры был перекомпилирован.
Если так,то можно трассировать событие перекомпиляции и выяснить причину ее возникновения.
1 дек 05, 16:58    [2132085]     Ответить | Цитировать Сообщить модератору
 Re: совершенно не понятное поведение сервера  [new]
Glory
Member

Откуда:
Сообщений: 104760
kamf_
Я думаю, нагрузка на сервер повышается из-за появившегося сканирования

А вообще-то сканирование должно приводить не к нагрузке на процессор, а к нагрузке на дисковую систему. Я так думаю
1 дек 05, 16:59    [2132093]     Ответить | Цитировать Сообщить модератору
 Re: совершенно не понятное поведение сервера  [new]
Prolog
Member

Откуда: Москва
Сообщений: 2791
kamf_
Я думаю, нагрузка на сервер повышается из-за появившегося сканирования
Это ясно. Вопрос: почему вдруг оптимизатор вместо index seek выбирает cluster index scan? В sysindexes посмотрите на соотношение rowmodctr и rowcnt, в начале и конце часа для той таблицы, которая переходит на scan.
1 дек 05, 17:01    [2132101]     Ответить | Цитировать Сообщить модератору
 Re: совершенно не понятное поведение сервера  [new]
kamf_
Member

Откуда:
Сообщений: 15
По последнему просмотру попадание в кеш было 95-99%. Если я вас правильно понял, вы считаете что по какой-то причине идет постоянная перекомпиляция процедур перед выполнением ?
1 дек 05, 17:04    [2132130]     Ответить | Цитировать Сообщить модератору
 Re: совершенно не понятное поведение сервера  [new]
kamf_
Member

Откуда:
Сообщений: 15
To Prolog
А можно ли идею: как интерпретировать эти данные и какие практические действия надо предпринимать на их основании ?
1 дек 05, 17:07    [2132147]     Ответить | Цитировать Сообщить модератору
 Re: совершенно не понятное поведение сервера  [new]
Prolog
Member

Откуда: Москва
Сообщений: 2791
kamf_
По последнему просмотру попадание в кеш было 95-99%. Если я вас правильно понял, вы считаете что по какой-то причине идет постоянная перекомпиляция процедур перед выполнением ?
процедура перекомпилируется по многим причинам, например: в ней есть временные таблицы, операторы DDL и т.д. При очередной перекомпиляции, при плохой статистике может быть выбран план со сканированием.
1 дек 05, 17:13    [2132210]     Ответить | Цитировать Сообщить модератору
 Re: совершенно не понятное поведение сервера  [new]
Glory
Member

Откуда:
Сообщений: 104760
Меня все же смущают слова автора
"содержимое хранимых процедур выполненое из QA показывает нормальный план выполнения (с использованием индексов), а при вызове самой хранимой процедуры в плане выполнения используется сканирование кластерного индекса "
Т.е. я так понимаю, что какие-то запросы (не процедуры!) в QA дают хороший план. А эти же запросы внутри процедуры - уже плохой
Тут может быть что угодно - от несовпадения типов входных переменных, до SET установок сохраненных вместе с процедурой
1 дек 05, 17:16    [2132231]     Ответить | Цитировать Сообщить модератору
 Re: совершенно не понятное поведение сервера  [new]
Prolog
Member

Откуда: Москва
Сообщений: 2791
kamf_
To Prolog
А можно ли идею: как интерпретировать эти данные и какие практические действия надо предпринимать на их основании ?
У нас база небольшая ~50Gb. Переиндексацию делаем каждую ночь. Днем в рабочие часы, каждый час выбираем 20 таблиц с самым плохим соотношением rowmodctr/rowcnt (число вставленных,измененных,удаленных строк со времени последнего обновления статистики/число строк в таблице) и производим update statistic для этих таблиц.
1 дек 05, 17:16    [2132232]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить