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

Откуда:
Сообщений: 21
Здравствуйте.
Подскажите, пжлст, может кто сталкивался. Репортсервер прод среде при запуска отчета выжирает весь ресурс ЦПУ на сервере БД.
При чем сервер не слабый 30 ГД ОЗУ, 4 ядра по 2.5 ГГЦ (AWS). На QA среде сервер стоит слабее, и но такой загрузки и близко нет.
Пробовали пересобирать статистику. Не помогло. Загрузка процессора прежняя. Клиент кричит, что все плохо и так быть не должно.
В сети много статей о том, что нужно смотреть долго работающий запросы, но что толку? Если статистика собирается регулярно, то их же никто переписывать не будет и так как репортов очень много то на это уйдут месяцы. В общем не совсем понятно что делать.
2 дек 16, 00:12    [19957883]     Ответить | Цитировать Сообщить модератору
 Re: Report Server сьедаеет все ресурсы CPU.  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31442
emphasizer
Подскажите, пжлст, может кто сталкивался. Репортсервер прод среде при запуска отчета выжирает весь ресурс ЦПУ на сервере БД.
Пробовали пересобирать статистику. Не помогло.
Репортсервер выжирает ЦПУ, или сиквел?
2 дек 16, 01:56    [19958058]     Ответить | Цитировать Сообщить модератору
 Re: Report Server сьедаеет все ресурсы CPU.  [new]
aleks2
Guest
emphasizer
их же никто переписывать не будет и так как репортов очень много то на это уйдут месяцы. В общем не совсем понятно что делать.


Ничо, будете смотреть и переписывать.

ЗЫ. Статистика - это не чудесная пыльца, ускоряющая любой говнозапрос.
2 дек 16, 07:53    [19958185]     Ответить | Цитировать Сообщить модератору
 Re: Report Server сьедаеет все ресурсы CPU.  [new]
StarikNavy
Member

Откуда: Москва
Сообщений: 2396
emphasizer
их же никто переписывать не будет и так как репортов очень много то на это уйдут месяцы.

ну вот так пользователям /бизнесу и ответьте
2 дек 16, 11:24    [19958852]     Ответить | Цитировать Сообщить модератору
 Re: Report Server сьедаеет все ресурсы CPU.  [new]
it17
Member

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

какая версия SSRS?
2 дек 16, 12:46    [19959282]     Ответить | Цитировать Сообщить модератору
 Re: Report Server сьедаеет все ресурсы CPU.  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7868
Четыре ядра у вас сожрут четыре рендера отчетов и еще и мало будет.
4 ядра - это персоналка домашняя, а не сервер.

автор
Пробовали пересобирать статистику. Не помогло.

Это вообще аллес капутт, т.е. вы разместили репортинг на сервере баз?
2 дек 16, 12:55    [19959338]     Ответить | Цитировать Сообщить модератору
 Re: Report Server сьедаеет все ресурсы CPU.  [new]
emphasizer
Member

Откуда:
Сообщений: 21
alexeyvg
emphasizer
Подскажите, пжлст, может кто сталкивался. Репортсервер прод среде при запуска отчета выжирает весь ресурс ЦПУ на сервере БД.
Пробовали пересобирать статистику. Не помогло.
Репортсервер выжирает ЦПУ, или сиквел?

Да, вы правы. Именно сиквел.
Может все дело в памяти? Я вот сравнил на qa и на prod и вижу, что на qa используется всего 4 ГБ, а на проде всего 1ГБ. Может потому больше идет утилизация процессора из-за малого количества выделенной памяти?

К сообщению приложен файл. Размер - 128Kb
2 дек 16, 14:30    [19959937]     Ответить | Цитировать Сообщить модератору
 Re: Report Server сьедаеет все ресурсы CPU.  [new]
emphasizer
Member

Откуда:
Сообщений: 21
Владислав Колосов, разместил не я, но да, они находятся на одном сервере.
2 дек 16, 14:32    [19959948]     Ответить | Цитировать Сообщить модератору
 Re: Report Server сьедаеет все ресурсы CPU.  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 37069
Память снижает io, а не cpu.

Может у вас на проде просто процы хуже и их меньше?
2 дек 16, 14:33    [19959954]     Ответить | Цитировать Сообщить модератору
 Re: Report Server сьедаеет все ресурсы CPU.  [new]
emphasizer
Member

Откуда:
Сообщений: 21
Я прошу прощения. То был второй скрин не с прода, а со стейджинга. На проде под сиквел когда запускается репорт то отжирает 19 ГБ озу. Т.е. как бы должно быть вполне достаточно памяти.
2 дек 16, 14:41    [19959991]     Ответить | Цитировать Сообщить модератору
 Re: Report Server сьедаеет все ресурсы CPU.  [new]
emphasizer
Member

Откуда:
Сообщений: 21
Гавриленко Сергей Алексеевич
Память снижает io, а не cpu.

Может у вас на проде просто процы хуже и их меньше?


Никак нет. Вот то, что стоит на qa. Xeon® Processor X5560
А вот то, что на проде стоит. Xeon® Processor cpu e5-2670
И ам и там по 4 ядра.
2 дек 16, 14:54    [19960036]     Ответить | Цитировать Сообщить модератору
 Re: Report Server сьедаеет все ресурсы CPU.  [new]
emphasizer
Member

Откуда:
Сообщений: 21
it17
emphasizer,

какая версия SSRS?

12.05532 - Standard Edition.
2 дек 16, 15:00    [19960067]     Ответить | Цитировать Сообщить модератору
 Re: Report Server сьедаеет все ресурсы CPU.  [new]
emphasizer
Member

Откуда:
Сообщений: 21
Я сравнил их rsreportserver.config файлы в ноутпад++.
Абсолютно одинаковы, кроме парметра DSN и InstallationID.
Т.е. как бы настройки для них одинаковы. Так что в чем же причина? Ведь они используют одни и те же репорты, только на QA они не грузят так проц.
2 дек 16, 15:20    [19960189]     Ответить | Цитировать Сообщить модератору
 Re: Report Server сьедаеет все ресурсы CPU.  [new]
WarAnt
Member

Откуда: Питер
Сообщений: 2421
emphasizer
Я сравнил их rsreportserver.config файлы в ноутпад++.
Абсолютно одинаковы, кроме парметра DSN и InstallationID.
Т.е. как бы настройки для них одинаковы. Так что в чем же причина? Ведь они используют одни и те же репорты, только на QA они не грузят так проц.


какой то пятничный бред, смешались кони, люди.:))

Вы же вроде определились что проблема у вас с сиквелом, а не с репортингом, или для вас это одно и тоже?
Проблему с сиквелом конфигом не решить, да и нет у него никакого конфига текстового и кнопки всё исправить тоже нет.
Налицо куча говно запросов, разбирайте их и исправляйте, собственно это вам уже выше рекомендовали.
Запускаете profiler, ловите запросы, смотрите планы, много курите и читаете как это всё исправить, правите запросы в отчетах, профит.
2 дек 16, 15:56    [19960378]     Ответить | Цитировать Сообщить модератору
 Re: Report Server сьедаеет все ресурсы CPU.  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7868
Ядра могут быть заняты обработкой запросов, разумеется.
2 дек 16, 17:45    [19960981]     Ответить | Цитировать Сообщить модератору
 Re: Report Server сьедаеет все ресурсы CPU.  [new]
emphasizer
Member

Откуда:
Сообщений: 21
WarAnt
Запускаете profiler, ловите запросы, смотрите планы, много курите и читаете как это всё исправить, правите запросы в отчетах, профит.


Звучит неплохо, но все запросы так пройти пока не получается. Часть параметров для них передается из отчетов и сами по себе в хранимой процедуре они не работают. Выдает не найдена переменная и еще прочу всяфкой лобуды. Я, к сожалению, не девелопер, а всего лишь начинающий девоп. Так что как их исправлять пока-что не особо знаю. Да и там не запросы, а хранимые процедуры. Можно профайлером оптимизировать саму процедуру чтобы не разбивать ее на блоки? А то в ней столько всего (целое полотно кода).
5 дек 16, 15:09    [19968505]     Ответить | Цитировать Сообщить модератору
 Re: Report Server сьедаеет все ресурсы CPU.  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6801
emphasizer
WarAnt
Запускаете profiler, ловите запросы, смотрите планы, много курите и читаете как это всё исправить, правите запросы в отчетах, профит.


Звучит неплохо, но все запросы так пройти пока не получается. Часть параметров для них передается из отчетов и сами по себе в хранимой процедуре они не работают. Выдает не найдена переменная и еще прочу всяфкой лобуды. Я, к сожалению, не девелопер, а всего лишь начинающий девоп. Так что как их исправлять пока-что не особо знаю. Да и там не запросы, а хранимые процедуры. Можно профайлером оптимизировать саму процедуру чтобы не разбивать ее на блоки? А то в ней столько всего (целое полотно кода).

не понятно о чём вы пишете, но профайлером вы можете найти проблемные запросы и их планы, этого достаточно для начала оптимизации
5 дек 16, 15:15    [19968544]     Ответить | Цитировать Сообщить модератору
 Re: Report Server сьедаеет все ресурсы CPU.  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7868
Вообще-то, все переменные должны быть найдены.
5 дек 16, 16:50    [19969074]     Ответить | Цитировать Сообщить модератору
 Re: Report Server сьедаеет все ресурсы CPU.  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31442
emphasizer
Звучит неплохо, но все запросы так пройти пока не получается.
Все не надо, только проблемные.
emphasizer
Часть параметров для них передается из отчетов и сами по себе в хранимой процедуре они не работают.
Вам нужно просто сделать правильный вызов процедуры (или запроса) так, как он вызывается и репорт-сервиса.
emphasizer
Можно профайлером оптимизировать саму процедуру чтобы не разбивать ее на блоки? А то в ней столько всего (целое полотно кода).
Профайлером можно только смотреть, что происходит, оптимизировать им ничего нельзя.

Т.е. алгоритм такой:
1. Профайлером смотрите поток выполнения на сервере, ищите проблемные места по высоким значениям колонок CPU Duration Read Write.
2. Для проблемных процедур открываете окно SSMS, настраиваете профайлер на его SPID, указываете в профайлере вход внутрь и показ планов, потом выполняете процедуру в окне SSMS.
Смотрите, в чём затык, в каком запросе. Если нужно, задаёте тут вопросы, выложив запросы, планы, структуры таблиц, версию сервера.
emphasizer
Я, к сожалению, не девелопер, а всего лишь начинающий девоп. Так что как их исправлять пока-что не особо знаю.
Ну, вообще это работа для разработчиков, или для DBA.

Я не знаю, что конкретно в вашей компании означает работа "девоп", может, они только пыль с серверов протирают и картриджи меняют, но, получив знания и опыт программиста и DBA, вы в любом случае ничего не потеряете, а только приобретёте.
5 дек 16, 17:06    [19969158]     Ответить | Цитировать Сообщить модератору
 Re: Report Server сьедаеет все ресурсы CPU.  [new]
emphasizer
Member

Откуда:
Сообщений: 21
alexeyvg
Я не знаю, что конкретно в вашей компании означает работа "девоп", может, они только пыль с серверов протирают и картриджи меняют, но, получив знания и опыт программиста и DBA, вы в любом случае ничего не потеряете, а только приобретёте.
в нашей компании девоп может создавать простые скрипты, создавать джобы на б.д., делать бекапы и смотреть за дедлоками. Хотя, у нас раньше был ДБ инженер, но он уволился. И теперь его работу (как и потимизацию скриптов) нету времени. Репорты типа работают - вот и хорошо, а если они работают медленно, то пусть девопы их оптимизируют, а то у разработчиков не это нет времени.)
Спасибо вам за подсказки. Я пробовал смотреть план оптимизации запроса именно в ssrs, копируя туда отдельные селекты из хранимо процедуры. Но без параметров они не отрабатывают. Придется их прописать ручками, видимо. Пока-что только посоздавал отсуствующие индексы. Дальше думаю переписать часть кода (если получится) и заменить вот это: select * into #temp на create #temp и insert into #temp так как прочел на stackoverflow, что в первом случае запросы на 70% времени работают дольше, чем просто создать темопвую теблицу и вставить в нее данные. Проверим, так ли это на самом деле. http://stackoverflow.com/questions/14681843/how-to-optimize-stored-procedures
5 дек 16, 17:26    [19969253]     Ответить | Цитировать Сообщить модератору
 Re: Report Server сьедаеет все ресурсы CPU.  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6801
emphasizer,

автор
select * into #temp на create #temp и insert into #temp так как прочел на stackoverflow, что в первом случае запросы на 70% времени работают дольше, чем просто создать темопвую теблицу и вставить в нее данные.

там текст как в рекламе :) по сабжу правильнее всё таки делать через создание, но откуда 70%....
5 дек 16, 17:36    [19969292]     Ответить | Цитировать Сообщить модератору
 Re: Report Server сьедаеет все ресурсы CPU.  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7868
Скорость вставки зависит от модели восстановления, наличия индексов и флага трассировки 610, т.е. включится или нет режим минимального протоколирования.
Но не стоит начинать с этого.

Для начала выясните, какие индексы рекомендует создать сервер:
SELECT * FROM sys.dm_db_missing_index_group_stats ddmigs
INNER JOIN sys.dm_db_missing_index_groups ddmig ON ddmig.index_group_handle = ddmigs.group_handle
INNER JOIN sys.dm_db_missing_index_details ddmid ON ddmid.index_handle = ddmig.index_handle


но подходить к результату надо творчески, не всегда большие цифры означают большие проблемы.
5 дек 16, 18:00    [19969415]     Ответить | Цитировать Сообщить модератору
 Re: Report Server сьедаеет все ресурсы CPU.  [new]
TaPaK
Member

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

автор
Скорость вставки зависит от модели восстановления, наличия индексов и флага трассировки 610, т.е. включится или нет режим минимального протоколирования.

т.е. на одном и том же сервере разницы не будет
5 дек 16, 18:03    [19969423]     Ответить | Цитировать Сообщить модератору
 Re: Report Server сьедаеет все ресурсы CPU.  [new]
emphasizer
Member

Откуда:
Сообщений: 21
Владислав Колосов
Скорость вставки зависит от модели восстановления, наличия индексов и флага трассировки 610, т.е. включится или нет режим минимального протоколирования.
Но не стоит начинать с этого.

Для начала выясните, какие индексы рекомендует создать сервер:
SELECT * FROM sys.dm_db_missing_index_group_stats ddmigs
INNER JOIN sys.dm_db_missing_index_groups ddmig ON ddmig.index_group_handle = ddmigs.group_handle
INNER JOIN sys.dm_db_missing_index_details ddmid ON ddmid.index_handle = ddmig.index_handle


но подходить к результату надо творчески, не всегда большие цифры означают большие проблемы.


выполнил выраженние. выдало две записи. но вывод очень длинный. запостить его увы. могу только показать вот это (см. скрин). я так понимаю, что это как бы довольно большие значения и если создать индексы, то все ускорится и начнет "летать"?
5 дек 16, 19:59    [19969814]     Ответить | Цитировать Сообщить модератору
 Re: Report Server сьедаеет все ресурсы CPU.  [new]
emphasizer
Member

Откуда:
Сообщений: 21
Пардон. Вот скрин.)

К сообщению приложен файл. Размер - 2Kb
5 дек 16, 20:00    [19969816]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить