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

Откуда: Магнитогогорс
Сообщений: 21
Всем доброго времени суток.
Заметил в поведении скл сервера такую особенность - в зависимости от выбранной БД, запросы на одном сервере, выполняются разное время. Например, для системных баз на подобии tempdb он выполняется за 4 секунды, в то время как для рабочих баз, созданных пользователем, за минуту и более. Результат выполнения и реальный план выполнения в обоих случаях одинаковы.
Кто то может пояснить откуда такая разница в выполнении?

ПАЛЫЧ
29 сен 19, 17:47    [21982055]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнени, в зависимости от БД  [new]
Щукина Анна
Member

Откуда:
Сообщений: 1466
Запросы никому не показывайте. Тут же у нас не IT-форум, а шоу экстрасенсов....
29 сен 19, 18:36    [21982067]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнени, в зависимости от БД  [new]
Massa52
Member

Откуда:
Сообщений: 373
BAH--zer,

Вангу, небось TempDb распологается на быстром носителе, а пользовательские базы на медленном.
30 сен 19, 08:02    [21982307]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнени, в зависимости от БД  [new]
Yasha123
Member

Откуда:
Сообщений: 1833
Massa52
BAH--zer,

Вангу, небось TempDb распологается на быстром носителе, а пользовательские базы на медленном.

круто.
теперь что, если читаю данные пользовательской базы из контекста tempdb,
то уже данные не с медленного диска будут читаться, а с быстрого?
30 сен 19, 09:10    [21982340]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнени, в зависимости от БД  [new]
Александр Бердышев
Member

Откуда: Санкт-Петербург
Сообщений: 345
Если выборки были из разных таблиц - там индексы могут быть по разному устроены.
И разный объём данных может обрабатываться.

Даже если объём данных абсолютно одинаковый - у одной из баз индекс может быть разреженный - поэтому больше операций чтения, при обработке одинакового объёма данных.
2 окт 19, 19:51    [21985367]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнени, в зависимости от БД  [new]
BAH--zer
Member

Откуда: Магнитогогорс
Сообщений: 21
Александр Бердышев,

Ларчик открывался несколько проще. Основные пользовательские базы качуют из проекта проект, изменяя только начинку (часть таблиц и процедур), разумеется они были написаны с использованием дремучих серверов 2009. Следовательно для ниж указан уровень совместимости 100 или 110. Этот уровень они сохраняют при бекапировании с сервера на сервер. При развертывании же sql server-a последних версий, например 16-ой, автоматически развертываются системные базы (master tempdb и т.д.) с уровнем 130. А в него уже включены всякие вкусности по параллелизму и прочему, что способствует производительности. И видимо выбор такой базы в качестве контекста автоматически дает возможность использовать эти плюшки. Теперь осталось подумать над тем - насколько безопасно изменять уровень совместимости у старых баз, и пробовать)
15 окт 19, 20:26    [21994963]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнени, в зависимости от БД  [new]
BAH--zer
Member

Откуда: Магнитогогорс
Сообщений: 21
*дремучих серверов 2009. Не нашел кнопку редактирования.
15 окт 19, 20:32    [21994965]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнени, в зависимости от БД  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36698
** дремучих не существующих серверов 2009
15 окт 19, 20:33    [21994966]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнени, в зависимости от БД  [new]
BAH--zer
Member

Откуда: Магнитогогорс
Сообщений: 21
***дремучих серверов 2008-2012. Не нашел кнопку редактирования.
15 окт 19, 20:47    [21994969]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнени, в зависимости от БД  [new]
Yasha123
Member

Откуда:
Сообщений: 1833
BAH--zer
При развертывании же sql server-a последних версий, например 16-ой, автоматически развертываются системные базы (master tempdb и т.д.) с уровнем 130. А в него уже включены всякие вкусности по параллелизму и прочему, что способствует производительности.

и как это соотносится с
автор
реальный план выполнения в обоих случаях одинаковы

???
план врет и не показывает вкусности или уже сами не помните, что в первом посте написали?
15 окт 19, 20:53    [21994970]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнени, в зависимости от БД  [new]
BAH--zer
Member

Откуда: Магнитогогорс
Сообщений: 21
Планы сравнивал, шли одинаково. Значит или не заметил какую то разницу, или вкусности там не показываются.
16 окт 19, 07:20    [21995079]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнени, в зависимости от БД  [new]
assmsk
Member

Откуда:
Сообщений: 169
Посмотрите какой compatibility level стоит в базах где запрос выполняется быстро и какой уровень там где запрос выполняется медленно.

 select name,compatibility_level from master.sys.databases 



У меня была подобная ситуация и установление во всех базах значения 130 решило проблему. Но возможно у вас другая проблема
16 окт 19, 11:12    [21995273]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнени, в зависимости от БД  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7407
BAH--zer
Планы сравнивал, шли одинаково. Значит или не заметил какую то разницу, или вкусности там не показываются.


Вы фантазируете, равно как и с тем, что уровень совместимости 130 не обеспечит выполнение кода с уровнем совместимости 110.
16 окт 19, 12:21    [21995352]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить