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

Откуда:
Сообщений: 129
Вот нарвался, и офигел: Скуль компилирует запрос 2 с половиной минуты, а исполняет скажем 300 миллисекунд.
 <QueryPlan DegreeOfParallelism="1" MemoryGrant="1104" CachedPlanSize="312" CompileTime="149211" CompileCPU="140969" CompileMemory="3096">


И чо с этим делать (кроме того что резать запрос)???

SQL Server 2014 CU8 Ent. Ed. , 128 CPU, 500TB memory, full SSD storage
8 фев 18, 15:50    [21176894]     Ответить | Цитировать Сообщить модератору
 Re: Скуль задумался.... надолго  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36972
Статистику создать нужную, поди.
8 фев 18, 15:52    [21176908]     Ответить | Цитировать Сообщить модератору
 Re: Скуль задумался.... надолго  [new]
Гигабайт Мегабайтович Килобайтов
Member [заблокирован]

Откуда:
Сообщений: 5975
обновить статистики, убрать ( переделать ) "кривые" условия ( типа field is null or field =@value). да там много чего может быть - и таки да - компилиться может минуты.
8 фев 18, 16:35    [21177246]     Ответить | Цитировать Сообщить модератору
 Re: Скуль задумался.... надолго  [new]
Andy_OLAP
Member

Откуда: я знаю, что Хапоэль Беэр-Шева - чемпион
Сообщений: 3151
Daba
Вот нарвался, и офигел: Скуль компилирует запрос 2 с половиной минуты, а исполняет скажем 300 миллисекунд.
 <QueryPlan DegreeOfParallelism="1" MemoryGrant="1104" CachedPlanSize="312" CompileTime="149211" CompileCPU="140969" CompileMemory="3096">


И чо с этим делать (кроме того что резать запрос)???

SQL Server 2014 CU8 Ent. Ed. , 128 CPU, 500TB memory, full SSD storage

А это секционированная таблица, переехавшая на 2014-й в старой БД, и указание поиска по дате.
План запроса строится тем, что в обход статистики сканируются ВСЕ файлы из файловых групп, на которые разложена таблица.
А затем - когда SQL убеждается, что нужная строка таки лежит в кошерной секции - именно из нее за миллисекунды эта строка читается.
Посмотрите Resource Monitor - и увидите сами.
Индусы, что поделать...
8 фев 18, 17:31    [21177485]     Ответить | Цитировать Сообщить модератору
 Re: Скуль задумался.... надолго  [new]
Daba
Member

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

Да нет, таблица без партиций, самая обычная.
Там запрос навороченный с кучей вложенных подзапросов, джоинов, и на закусь, с построением xml.
Так что я понять его могу...
8 фев 18, 17:42    [21177554]     Ответить | Цитировать Сообщить модератору
 Re: Скуль задумался.... надолго  [new]
Andy_OLAP
Member

Откуда: я знаю, что Хапоэль Беэр-Шева - чемпион
Сообщений: 3151
Daba
Andy_OLAP,
с построением xml.

Ну как бы да. Ну Вы поняли...
8 фев 18, 17:47    [21177581]     Ответить | Цитировать Сообщить модератору
 Re: Скуль задумался.... надолго  [new]
Andy_OLAP
Member

Откуда: я знаю, что Хапоэль Беэр-Шева - чемпион
Сообщений: 3151
Daba,

Выгружайте в CSV, а затем скриптом на powershell формируйте из них независимо от SQL нужные xml файлики.
8 фев 18, 17:49    [21177591]     Ответить | Цитировать Сообщить модератору
 Re: Скуль задумался.... надолго  [new]
Владислав Колосов
Member

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

используйте руководство планов.
8 фев 18, 18:22    [21177700]     Ответить | Цитировать Сообщить модератору
 Re: Скуль задумался.... надолго  [new]
Daba
Member

Откуда:
Сообщений: 129
Владислав Колосов,

Думал... но жёстко это как-то...
8 фев 18, 18:27    [21177716]     Ответить | Цитировать Сообщить модератору
 Re: Скуль задумался.... надолго  [new]
Владислав Колосов
Member

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

первый раз 2 минуты получите, потом как по маслу.
8 фев 18, 18:43    [21177778]     Ответить | Цитировать Сообщить модератору
 Re: Скуль задумался.... надолго  [new]
dao
Member

Откуда: Москва
Сообщений: 771
Владислав Колосов
Daba,

первый раз 2 минуты получите, потом как по маслу.

а потом при неожиданном рекомпайле "всё упадёт" ? ))
9 фев 18, 10:04    [21178921]     Ответить | Цитировать Сообщить модератору
 Re: Скуль задумался.... надолго  [new]
felix_ff
Member

Откуда: Moscow
Сообщений: 1368
dao,

У вас там for xml применен сразу к резалтсету запроса? Попробуйте сам резалт сет записать во временную таблицу необходимой структуры а уже с нее лепить XML.
9 фев 18, 10:09    [21178933]     Ответить | Цитировать Сообщить модератору
 Re: Скуль задумался.... надолго  [new]
dao
Member

Откуда: Москва
Сообщений: 771
felix_ff
dao,

У вас там for xml применен сразу к резалтсету запроса? Попробуйте сам резалт сет записать во временную таблицу необходимой структуры а уже с нее лепить XML.

эт не у меня а у автора топика ))
9 фев 18, 10:25    [21178975]     Ответить | Цитировать Сообщить модератору
 Re: Скуль задумался.... надолго  [new]
felix_ff
Member

Откуда: Moscow
Сообщений: 1368
dao

Сорян, тыкнул просто ответ на последний пост :)
9 фев 18, 10:52    [21179067]     Ответить | Цитировать Сообщить модератору
 Re: Скуль задумался.... надолго  [new]
Daba
Member

Откуда:
Сообщений: 129
felix_ff
dao,

У вас там for xml применен сразу к резалтсету запроса? Попробуйте сам резалт сет записать во временную таблицу необходимой структуры а уже с нее лепить XML.



Это то что сделал, но проверить могу только на сервере клиента - только там эта беда и случается, и то с частотой 1 к 1000.
12 фев 18, 11:12    [21184760]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить