|
Новый SQL сервер медленнее старого...
|
|||
---|---|---|---|
#18+
Добрый день. Был сервер с Win2003 и MS SQL Server 2000, базами криутившимися на нем (2xSSD на RAID1). Решили сделать апгрейд железа. Поставили нормальный сервер, также 2xSSD на RAID1 под машину. Сделали виртуализацию VmWare. Теперь под SQL машина на Windows 2019 Std, MS SQL Server 2019. Базы экспортировал серез промежуточную виртуалку с MS SQL Server 2005 через Backup-Restore. Теперь сам вопрос: прироста в производительности на некоторых запросах или не почувствовали совсем или на некоторых даже провал. Может подскажете с чем может быть связано и что с этим делать? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 11:25 |
|
Новый SQL сервер медленнее старого...
|
|||
---|---|---|---|
#18+
drgdr Добрый день. Был сервер с Win2003 и MS SQL Server 2000, базами криутившимися на нем (2xSSD на RAID1). Решили сделать апгрейд железа. Поставили нормальный сервер, также 2xSSD на RAID1 под машину. Сделали виртуализацию VmWare. Теперь под SQL машина на Windows 2019 Std, MS SQL Server 2019. Базы экспортировал серез промежуточную виртуалку с MS SQL Server 2005 через Backup-Restore. Теперь сам вопрос: прироста в производительности на некоторых запросах или не почувствовали совсем или на некоторых даже провал. Может подскажете с чем может быть связано и что с этим делать? зря вы с MS SQL Server 2000 на MS SQL Server 2019 перешли . старый софт был заточен именно под MS SQL Server 2000 , адаптировать его под MS SQL Server 2019 скорее всего уже некому . самое простое было залить Win2003 с MS SQL Server 2000 в виртуалку VmWare на новом железе. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 11:36 |
|
Новый SQL сервер медленнее старого...
|
|||
---|---|---|---|
#18+
drgdr, для начала попробуйте установить уровень совместимости баз на 100 (SQL2008). Если станет лучше, соберите тестовый сервер и понемногу переписывайте запросы. Переход на новую версию обычно дает новые возможности, а не прирост производительности. Плюс техподдержку. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 11:52 |
|
Новый SQL сервер медленнее старого...
|
|||
---|---|---|---|
#18+
drgdr прироста в производительности на некоторых запросах или не почувствовали совсем или на некоторых даже провал. Может подскажете с чем может быть связано и что с этим делать? Я бы сделал анализ производительности, индексов, статистики, планов выполнения и самих запросов. Другое железо, другая структура. У меня была ситуация, когда на тестовом и продуктивном сервере на одних и тех же таблицах стояли разные индексы. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 12:39 |
|
Новый SQL сервер медленнее старого...
|
|||
---|---|---|---|
#18+
Спасибо за ответы! Сделал тестовый север, по-умолчанию стоит уровень совместимости 100. Поставил 150 - некоторые запросы ускорились до приемлемого состояния... Вот пытаюсь понять что это было... Переписывать "дорогие" запросы конечно придется... ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 14:20 |
|
Новый SQL сервер медленнее старого...
|
|||
---|---|---|---|
#18+
Я бы начал с того, что: 1. Пересчитал бы статистики по всем таблицам с полным сканированием 2. Посмотрел бы, какие индексы он предлагает построить, например так: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
3. Посмотрел, правильно ли настроены верхний и нижний объем выделенного серверу ОЗУ, степень параллелизма, lock page in memory и volume task, приращение БД и количество файлов tempdb. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 15:09 |
|
Новый SQL сервер медленнее старого...
|
|||
---|---|---|---|
#18+
drgdr Теперь сам вопрос: прироста в производительности на некоторых запросах или не почувствовали совсем или на некоторых даже провал. Может подскажете с чем может быть связано и что с этим делать? Вполне закономерно будет не быстрее. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 16:19 |
|
Новый SQL сервер медленнее старого...
|
|||
---|---|---|---|
#18+
alexeyvg, нет, и ОС и версия SQL поменялись. Ресурсов стало во много раз больше (был 32-битный сервер на AMD Opteron 1354 + 2ГБ оперативки). Теперь стоит 8-ядерный Xeon, оперативки выделил для тестов 9ГБ ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2020, 13:47 |
|
Новый SQL сервер медленнее старого...
|
|||
---|---|---|---|
#18+
uaggster, индексы пересчитал и по рекомендациям перестроил и реоганизовал. по 3 пункту - не знаю как это сделать... ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2020, 13:49 |
|
Новый SQL сервер медленнее старого...
|
|||
---|---|---|---|
#18+
drgdr, индексы - черт с ними. Пересчитайте статистику! Код: sql 1. 2. 3. 4.
>по 3 пункту - не знаю как это сделать... https://www.sqlservercentral.com/blogs/check-instant-file-initialization-and-lock-pages-in-memory-options http://sqlcom.ru/dba-tools/limit-memory-in-sql-server-and-what-is-new-in-sql-server-2016/ https://logicalread.com/sql-server-tempdb-best-practices-initial-sizing-w01/#.X32mXWgzaUk ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2020, 14:29 |
|
Новый SQL сервер медленнее старого...
|
|||
---|---|---|---|
#18+
uaggster, блокировка страниц в памяти включена по умолчанию как бы не с 2008R2. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2020, 14:38 |
|
Новый SQL сервер медленнее старого...
|
|||
---|---|---|---|
#18+
Владислав Колосов uaggster, блокировка страниц в памяти включена по умолчанию как бы не с 2008R2. Нет, не включена. Ручками всё, через gpedit. Это IFI при установке можно крыжиком включить и то с 2016-го такая возможность появилась, если правильно помню. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2020, 16:29 |
|
Новый SQL сервер медленнее старого...
|
|||
---|---|---|---|
#18+
Marat2020 Владислав Колосов uaggster, блокировка страниц в памяти включена по умолчанию как бы не с 2008R2. Нет, не включена. Ручками всё, через gpedit. secpol.msc -> Local Policies -> User rights assignment -> Lock pages in memory ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2020, 16:37 |
|
Новый SQL сервер медленнее старого...
|
|||
---|---|---|---|
#18+
komrad secpol.msc -> Local Policies -> User rights assignment -> Lock pages in memory Да. И так тоже можно. А так, для уверенности что не я лично за gpedit придумал, вот ссылочка Включение параметра «Блокировка страниц в памяти» (Windows) И так и эдак результат один. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2020, 16:47 |
|
Новый SQL сервер медленнее старого...
|
|||
---|---|---|---|
#18+
drgdr alexeyvg, нет, и ОС и версия SQL поменялись. Ресурсов стало во много раз больше (был 32-битный сервер на AMD Opteron 1354 + 2ГБ оперативки). Теперь стоит 8-ядерный Xeon, оперативки выделил для тестов 9ГБ По процессору то же самое, если он не был всегда 100%, то ускорения не будет. А диски, самое главное и самое дорогое в сервере СУБД, остались теми же самыми, как я понял (2 SSD). ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2020, 10:55 |
|
Новый SQL сервер медленнее старого...
|
|||
---|---|---|---|
#18+
alexeyvg По процессору то же самое, если он не был всегда 100%, то ускорения не будет Разве? А если новые ядра побыстрее, а запросы как правило не параллелятся? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2020, 11:38 |
|
Новый SQL сервер медленнее старого...
|
|||
---|---|---|---|
#18+
Критик alexeyvg По процессору то же самое, если он не был всегда 100%, то ускорения не будет Разве? А если новые ядра побыстрее, а запросы как правило не параллелятся? Но в целом вопросы типа "купили новый сервер а он не быстрее" подразумевают отсутствие существенной разницы в скорости, а производительность ядра сильно не изменилась за последний десяток лет. И даже больше того, ядро современного 48 ядерного серверного проца медленнее, чем ядро десктопного проца 10 летней давности. Поэтому основное правило - ожидать существенного повышения производительности можно, если усилить то, что было сильно загружено. А вы про какие то тонкости и особенности говорите, это явно не случай ТС. Притом в случае ТС тут всё правильно писали про сравнение планов, уровень совместимости и т.д., я просто написал, что не надо ожидать существенного ускорения, только потому, что новый сервер новее и дороже, если не расшивались конкретные узкие места. У ТС, вангую, проц и память не были загружены, а диски наверняка были, потому что так обычно и бывает :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2020, 12:55 |
|
Новый SQL сервер медленнее старого...
|
|||
---|---|---|---|
#18+
В любом случае должно быть достаточно оперативной памяти для кеширования планов, данных таблиц и индексов и сортировок. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2020, 13:28 |
|
Новый SQL сервер медленнее старого...
|
|||
---|---|---|---|
#18+
c 2014 появился новый оптимизатор запросов, попробуйте в настройках базы установить флаг legacy cardinality estimation ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2020, 10:54 |
|
Новый SQL сервер медленнее старого...
|
|||
---|---|---|---|
#18+
Просто если вы понизите совместимости ниже 16 сервака, то, на сколько я помню, потеряете возможность работать с json форматом ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2020, 13:46 |
|
|
start [/forum/topic.php?fid=46&fpage=46&tid=1685554]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
49ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
2ms |
others: | 275ms |
total: | 415ms |
0 / 0 |