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

Откуда:
Сообщений: 6
Добрый день!
В общем ситуация следующая.
Есть у нас старенький сервер на котором крутиться с десяток баз (на MS SQL server 2008), со своими задачами справляется еле-еле.
Купили новый хороший сервер, чтобы перекинуть парочку баз на него (на целевом установили MS SQL server 2014).
С переносом баз проблем не было. Но как оказалось производительность выросла не слишком.
Я решил сравнить время выполнения запросов на новом и старом сервере. Как оказалось время выполнения улучшилось процентов на 20%, хотя я полагал что производительность вырастет раза в два.
Время выполнения запросов я засекал с помощью команд:
SET STATISTICS TIME ON
//select
SET STATISTICS TIME OFF
Выполнял два запроса
на старом сервере (работал под нагрузкой, т.е. в рабочем режиме)
запрос 1 (650 мс)
запрос 2 (24000 мс)-это просто большая выборка для тестирования
на новом сервере (кроме меня никто там ничего не делал)
запрос 1 (500 мс)
запрос 2 (20000 мс)

Можно конечно было на этом и успокоится но, я решил поставить на свой ПК (i5-3470) MS Sql server 2014 и посмотреть как выполняется на обычной персоналке.
оказались следующий результаты:
запрос 1 (370 мс)
запрос 2 (12000 мс)

и это не дает мне покоя, как настольный ПК может выполнять запросы быстрее сервера?
возможно ли такое?
12 сен 14, 12:29    [16567698]     Ответить | Цитировать Сообщить модератору
 Re: Запрос на сервере выполняется медленнее чем на ПК  [new]
aleks2
Guest
kastalabasta
я полагал что производительность вырастет раза в два.

и это не дает мне покоя, как настольный ПК может выполнять запросы быстрее сервера?
возможно ли такое?


1. Приведите основания для ваших "предположений", отличные от кофейной гущи.

2. Может. Только надо различать "один запрос" и "многопользовательскую нагрузку".
12 сен 14, 12:38    [16567800]     Ответить | Цитировать Сообщить модератору
 Re: Запрос на сервере выполняется медленнее чем на ПК  [new]
Glory
Member

Откуда:
Сообщений: 104751
kastalabasta
Я решил сравнить время выполнения запросов на новом и старом сервере. Как оказалось время выполнения улучшилось процентов на 20%, хотя я полагал что производительность вырастет раза в два.

За счет механического добавления памяти, процессоров, дисков ?

kastalabasta
и это не дает мне покоя, как настольный ПК может выполнять запросы быстрее сервера?

Для того, чтобы что-то сравнивать, надо хотя бы всех поставить в равные условия
12 сен 14, 13:21    [16568105]     Ответить | Цитировать Сообщить модератору
 Re: Запрос на сервере выполняется медленнее чем на ПК  [new]
kastalabasta
Member

Откуда:
Сообщений: 6
Glory, ну хотя бы за счет механического добавления...
Хотя память не просто увеличилась, а стала быстрее, шина стала быстрее.
Жесткий стал на порядок быстрее, увеличилась производительность процессора

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

Glory
Для того, чтобы что-то сравнивать, надо хотя бы всех поставить в равные условия

Про какие равные условия вы говорите?
12 сен 14, 13:51    [16568276]     Ответить | Цитировать Сообщить модератору
 Re: Запрос на сервере выполняется медленнее чем на ПК  [new]
Glory
Member

Откуда:
Сообщений: 104751
kastalabasta
На старом серваке сильно не хватало оперативки, он много свопил.

Windows и MSSQL - это разные сервера.
Чем и как вы измеряли производительность именно MSSQL.

kastalabasta
Про какие равные условия вы говорите?

Версии/редакции серверов.
Объем данных.
Сетевое соединение.
Посторонняя нагрузка
12 сен 14, 13:56    [16568329]     Ответить | Цитировать Сообщить модератору
 Re: Запрос на сервере выполняется медленнее чем на ПК  [new]
kastalabasta
Member

Откуда:
Сообщений: 6
Glory
kastalabasta
На старом серваке сильно не хватало оперативки, он много свопил.

Windows и MSSQL - это разные сервера.
Чем и как вы измеряли производительность именно MSSQL.

kastalabasta
Про какие равные условия вы говорите?

Версии/редакции серверов.
Объем данных.
Сетевое соединение.
Посторонняя нагрузка


то что Windows и MSSQL это не одно и тоже это естественно.
Производительность MSSQL замерял при выполнении запроса командами
SET STATISTICS TIME ON
//select
SET STATISTICS TIME OFF
Так же запускал профайлер, результаты аналогичные.

Про равные условия:
Версии серверов MSSQL: на новом сервере и на моем ПК идентичные, ставил с одного дистрибутива MSSQL 2014 (v.12.0.2000.8).
На старом сервере стоит MSSQL 2008 (не R2).
База, одна и та же, поднималась из бэкапов.
Сетевое соединение тут не причем, выполнялось на машине с сервером MSSQL;
Нагрузка была только на старом сервере.
12 сен 14, 14:12    [16568436]     Ответить | Цитировать Сообщить модератору
 Re: Запрос на сервере выполняется медленнее чем на ПК  [new]
Glory
Member

Откуда:
Сообщений: 104751
kastalabasta
Производительность MSSQL замерял при выполнении запроса командами
SET STATISTICS TIME ON
//select
SET STATISTICS TIME OFF

Эта команда выводи 4 разных времени.
И никакой информации об использованнии памяти, диска, сети и пр.
12 сен 14, 14:16    [16568461]     Ответить | Цитировать Сообщить модератору
 Re: Запрос на сервере выполняется медленнее чем на ПК  [new]
kastalabasta
Member

Откуда:
Сообщений: 6
Glory,
Из четырех цифер интересны только две последний.
Время ЦП = 391 мс, затраченное время = 396 мс.

насколько я понимаю последняя цифра с учетом расходов времени на доступ к диску и памяти.
Как я и говорил сеть тут не причем, запросы выполняются непосредственно на машине.
В первом посте я писал про 'Время ЦП'. Оно как раз мне и интересно.

На новом сервере и на ПК, накладные расходы (т.е. затраченное время минус Время ЦП) меньше чем на старом.
12 сен 14, 14:34    [16568603]     Ответить | Цитировать Сообщить модератору
 Re: Запрос на сервере выполняется медленнее чем на ПК  [new]
Glory
Member

Откуда:
Сообщений: 104751
kastalabasta
Из четырех цифер интересны только две последний.

Использованное процессорное время - это следствие того, как запрос выполнился.
А не причина, почему запрос выполнился за это время
12 сен 14, 14:37    [16568626]     Ответить | Цитировать Сообщить модератору
 Re: Запрос на сервере выполняется медленнее чем на ПК  [new]
kastalabasta
Member

Откуда:
Сообщений: 6
Glory
kastalabasta
Из четырех цифер интересны только две последний.

Использованное процессорное время - это следствие того, как запрос выполнился.
А не причина, почему запрос выполнился за это время


Абсолютно с Вами согласен.
Есть, ли у Вас какие-то мысли по этому поводу, или это нормальное состояние?
12 сен 14, 14:42    [16568658]     Ответить | Цитировать Сообщить модератору
 Re: Запрос на сервере выполняется медленнее чем на ПК  [new]
Glory
Member

Откуда:
Сообщений: 104751
kastalabasta
Есть, ли у Вас какие-то мысли по этому поводу, или это нормальное состояние?

Замерять производительность
Начать с планов, статистики чтений, очереди к диску, попаданий в кэш
12 сен 14, 14:48    [16568707]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить