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

Откуда:
Сообщений: 11
Здравствуйте,

Я storage админ, а не ДБА. Перенес у клиента дб с локального диска на fibre attached storage. SQL server от этого выйграл, а вот все остальное на этом array-е проиграло. На SQL сервере только одна небольшая дб(~20гб), но он постоянно что-то "читает" с disk array (~100mb/sec) и из-за этого CPU на диск array все время ~80%! При этом по сети ничего особо не проишодит. Т.е. это не пользователи, а какие-то внутринее процессы на SQL сервере.

Как можно посмотреть что генерирует эти 100мб/сек???

У компании нет ДБА. Все настройки в SQL server - по умолчанию.

SQL server 2000, Win 2003. Все стандард.

Еще, в сервере 8ГБ Ram, но как я понимую SQL сможет использовать только 2ГБ?

Спасибо за любые советы, идеи!
5 июн 09, 16:02    [7270655]     Ответить | Цитировать Сообщить модератору
 Re: SQL проблемы с производительностью  [new]
Prolog
Member

Откуда: Москва
Сообщений: 2791
Можно Profile'ом посмотреть, что читает-пишет SQL в базы.
5 июн 09, 16:11    [7270701]     Ответить | Цитировать Сообщить модератору
 Re: SQL проблемы с производительностью  [new]
Crimean
Member

Откуда:
Сообщений: 13148
чего проще - позвать на полдня DBA лично или удаленно
5 июн 09, 17:12    [7271067]     Ответить | Цитировать Сообщить модератору
 Re: SQL проблемы с производительностью  [new]
DeColo®es
Member

Откуда: Москва
Сообщений: 5499
Блог
Вот тут как раз описывается, как посмотреть, какие запросы больше всего читают.

Но +1 к Crimean - если Вы не DBA, будет скорее всего сложно понять, как эти запросы дальше оптимизировать.

Еще можно воспользоваться профайлером чтобы понять кто эти из пользователей тяжелые запросы вызывает.
(Тут доклад, в начале которого как раз рассказывается/показывается, что это и как им пользоваться)
5 июн 09, 18:19    [7271461]     Ответить | Цитировать Сообщить модератору
 Re: SQL проблемы с производительностью  [new]
SecondUser
Member

Откуда:
Сообщений: 11
Спасибо. Читаю ссылки.

Позвать ДБА одна из опций, но не самая легко выполнимая. SQL сервер установлен только для одной дб и производитель софта и этой дб говорит что это стандартная конфигурация и все должно работать нормально. Никого постороннего к конфигурации db допускать, этот вендор не хочет.

perfmon пользуюсь. Показывет достаточно большое значение page faults: обычно 400-600/сек, но иногда на 10-30сек взлетает до 6000-8000.

Я же пытаюсь найти способ ограничить использованиe этим sql сервер моего storage array. (paging file? memory options? locking options? tempdb settings? logging options?)
5 июн 09, 18:58    [7271579]     Ответить | Цитировать Сообщить модератору
 Re: SQL проблемы с производительностью  [new]
DeColo®es
Member

Откуда: Москва
Сообщений: 5499
Блог
Если ограничивать 2000 редакцию, серверу скорее хуже от этого станет - чем меньше SQL имеет ресурсов тем больше будет так или иначе "свопить". А вообще нужно сначала запросы/счетчики смотреть, а потом уже говорить, что там конфигурить.
5 июн 09, 19:05    [7271593]     Ответить | Цитировать Сообщить модератору
 Re: SQL проблемы с производительностью  [new]
DeColo®es
Member

Откуда: Москва
Сообщений: 5499
Блог
Кстати, 2000 может прекрасно использовать больше 2Гб:
читайте например тут и тут.

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

И в любом случае - установить на SQL SP4 + последние хотфиксы.
5 июн 09, 19:16    [7271613]     Ответить | Цитировать Сообщить модератору
 Re: SQL проблемы с производительностью  [new]
SecondUser
Member

Откуда:
Сообщений: 11
DeColo®es,

Спасибо за ссылки. Я как раз в этом направлении работаю. Я пытаюсь либо найти способ заставить sql использовать больше ram (в сервере установлено 8гб, но по понятным причинам ос видит только ~3.2гб) либо заставить sql server свопить на локальном raid10. Если это ухудшит sql перформанц на 10%, но облекчит нагрузку на storage - я пуду счастлив!
5 июн 09, 19:26    [7271630]     Ответить | Цитировать Сообщить модератору
 Re: SQL проблемы с производительностью  [new]
Crimean
Member

Откуда:
Сообщений: 13148
а на файбере небось R5 попиленый на виртуальные шпинделя? и туда сгрузили небось еще и tempdb?
5 июн 09, 19:59    [7271689]     Ответить | Цитировать Сообщить модератору
 Re: SQL проблемы с производительностью  [new]
SecondUser
Member

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

Так и есть. Только tempdb на локальном raid1. Пытаюсь найти как заставить application использовать tempdb или свопить больше.
5 июн 09, 20:43    [7271785]     Ответить | Цитировать Сообщить модератору
 Re: SQL проблемы с производительностью  [new]
Александр Волок (def1983)
Member

Откуда: Rotterdam
Сообщений: 4959
DeColo®es

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

Не больше 2-х.


По сабжу, в момент нагрузки:
select top 3 * from master..sysprocesses 
order by reads desc

p.s. вполне возможно что включен автошринк. или же, к примеру, checkdb выполняется каждые полчаса. Эти команды могут создать такую нагрузку
5 июн 09, 21:10    [7271839]     Ответить | Цитировать Сообщить модератору
 Re: SQL проблемы с производительностью  [new]
SecondUser
Member

Откуда:
Сообщений: 11
Александр Волок (def1983)
DeColo®es

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

Не больше 2-х.

Вроде при использовании ключа /3GB можно использовать больше чем 2.

Александр Волок (def1983)
[quot DeColo®es]
По сабжу, в момент нагрузки:
select top 3 * from master..sysprocesses 
order by reads desc

[quot Александр Волок (def1983)][quot DeColo®es]
p.s. вполне возможно что включен автошринк. или же, к примеру, checkdb выполняется каждые полчаса. Эти команды могут создать такую нагрузку


Я не вижу "reads" в sysprocesses...

А как проверить автошринк и checkdb?
5 июн 09, 21:20    [7271844]     Ответить | Цитировать Сообщить модератору
 Re: SQL проблемы с производительностью  [new]
SecondUser
Member

Откуда:
Сообщений: 11
Александр Волок (def1983),

Autoshrink выключен. Но auto create statistics и auto update statistics включены. Эти настройки как-нибудь влияют на performance, disk i/o?

К сообщению приложен файл. Размер - 0Kb
5 июн 09, 21:39    [7271859]     Ответить | Цитировать Сообщить модератору
 Re: SQL проблемы с производительностью  [new]
Александр Волок (def1983)
Member

Откуда: Rotterdam
Сообщений: 4959
SecondUser

Вроде при использовании ключа /3GB можно использовать больше чем 2.

/3GB это опция операционной системы, а ограничение в 2 ГБ это фича стандартной редакции SQL Server 2000.
/3GB в данном случае как зайцу стоп-сигнал...

SecondUser

Я не вижу "reads" в sysprocesses...

select top 3 * from master..sysprocesses 
order by physical_io  desc

SecondUser

А как проверить автошринк и checkdb?

Первое - в опциях базы, второе, просматривая активные команды при выполнении запроса, предоставленного выше.
5 июн 09, 21:55    [7271876]     Ответить | Цитировать Сообщить модератору
 Re: SQL проблемы с производительностью  [new]
Crimean
Member

Откуда:
Сообщений: 13148
база на массиве - торн пейджи отключите
select @@version в студию
exec sp_configure - аналогично
соберите стандартный трас за час работы, загоните в таблицу, попробуйте сгруппировать команды по типу команды / аппликухе / юзеру - найдите в них общее, короч
результат сгруппируйте и отсортируйте раздельно по reads и по writes
возможно увидите причину
5 июн 09, 22:24    [7271910]     Ответить | Цитировать Сообщить модератору
 Re: SQL проблемы с производительностью  [new]
SecondUser
Member

Откуда:
Сообщений: 11
Crimean
база на массиве - торн пейджи отключите
select @@version в студию

Microsoft SQL Server 2000 - 8.00.2055 (Intel X86) Dec 16 2008 19:46:53 Copyright (c) 1988-2003 Microsoft Corporation Standard Edition on Windows NT 5.2 (Build 3790: Service Pack 2)

Crimean

exec sp_configure - аналогично
соберите стандартный трас за час работы, загоните в таблицу, попробуйте сгруппировать команды по типу команды / аппликухе / юзеру - найдите в них общее, короч
результат сгруппируйте и отсортируйте раздельно по reads и по writes
возможно увидите причину


Можно немного подробнее про: "соберите стандартный трас за час работы"
Что есть "стандартный трас"?

Спасибо!

К сообщению приложен файл. Размер - 0Kb
5 июн 09, 22:51    [7271958]     Ответить | Цитировать Сообщить модератору
 Re: SQL проблемы с производительностью  [new]
SecondUser
Member

Откуда:
Сообщений: 11
Александр Волок (def1983),

Что NETWORKIO значит? Звучит странно, потому что по сети ничего не происодит

К сообщению приложен файл. Размер - 0Kb
5 июн 09, 23:04    [7271987]     Ответить | Цитировать Сообщить модератору
 Re: SQL проблемы с производительностью  [new]
DeColo®es
Member

Откуда: Москва
Сообщений: 5499
Блог
SecondUser
Можно немного подробнее про: "соберите стандартный трас за час работы"
Что есть "стандартный трас"?
Это трасса с настройками по умолчанию в профайлере.
6 июн 09, 11:42    [7272513]     Ответить | Цитировать Сообщить модератору
 Re: SQL проблемы с производительностью  [new]
Crimean
Member

Откуда:
Сообщений: 13148
> Что NETWORKIO значит?

в вашем случае - ничего :) если бы был ненулевой waittime и просецц бы стоял на этом ожидании, то это бы означали проблемы с сеткой или с дизайном приложения, следствием этих проблем было бы увеличенное потребление ОЗУ. а все из-за того что приложение не спешит забирать запрошенные данные. но у вас этих ожиданий нет.

> Звучит странно, потому что по сети ничего не происодит

совсем-совсем ничего? :)
6 июн 09, 16:14    [7272868]     Ответить | Цитировать Сообщить модератору
 Re: SQL проблемы с производительностью  [new]
DeColo®es
Member

Откуда: Москва
Сообщений: 5499
Блог
Crimean
> Звучит странно, потому что по сети ничего не происодит
совсем-совсем ничего? :)
Так потому и процессы "не работают" - в сети ничего не происходит, а они же команды "оттуда" ждут. ;)
6 июн 09, 23:05    [7273366]     Ответить | Цитировать Сообщить модератору
 Re: SQL проблемы с производительностью  [new]
Crimean
Member

Откуда:
Сообщений: 13148
DeColo®es
Crimean
> Звучит странно, потому что по сети ничего не происодит
совсем-совсем ничего? :)
Так потому и процессы "не работают" - в сети ничего не происходит, а они же команды "оттуда" ждут. ;)


там вайттаймы 0. были бы не 0 и сидело бы на нетворке - были бы проблемы. а в том что показано нет проблем. ПОСЛЕДНЕЕ ожидание - да - было нетворкио. ну так это норма. чот запросили, получили и все, слип теперь
щаз реально из показанного процесс файл данных ждет что само по себе еще ни о чем не говорит
8 июн 09, 13:49    [7276418]     Ответить | Цитировать Сообщить модератору
 Re: SQL проблемы с производительностью  [new]
Prolog
Member

Откуда: Москва
Сообщений: 2791
SecondUser
Можно немного подробнее про: "соберите стандартный трас за час работы"
Что есть "стандартный трас"?
В состав клиентов SQL Server помимо Query Analyzer и EnterPrise Manager входит утилита SQL Server Profiler. Эта программа позволяет просмотреть и/или записать все запросы, которые выполнял сервер. А также общее время, время CPU, количество операций ввода-вывода затраченное на каждый запрос. Разберитесь с этой утилитой - она вам поможет посмотреть: действительно сервер выполняет всё время какие-то запросы, даже в отсутствии пользователей.
8 июн 09, 14:47    [7276787]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить