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

Откуда: Москва
Сообщений: 2428
Добрый день!
В пиковые нагрузки все отчеты MSRS резко начинают тупить.
Просьба подсказать узкое место
Статистика по ожиданиям, показывает на блокировки:
http://prntscr.com/bizyxz

Версия сервера:

Microsoft SQL Server 2012 (SP3) (KB3072779) - 11.0.6020.0 (X64)
Oct 20 2015 15:36:27
Copyright (c) Microsoft Corporation
Enterprise Edition (64-bit) on Windows NT 6.3 <X64> (Build 9600: ) (Hypervisor)

в топе всегда висят процедуры репортинга
PROCEDURE [dbo].[WriteLockSession]
PROCEDURE dbo.[CreateChunkSegment]

Историю логов почистил и поставил минимально (5 дней), не помогло.
По прошлым разам - дедлоки и блокировки на таблице [ReportServerTempDB].dbo.SessionLock
Хотя там есть и индексы и всего 300 записей таблица содержит

cost threshold for parallelism для инстанса 25
21 июн 16, 10:44    [19317785]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите с оптимизацией RS  [new]
o-o
Guest
sys.dm_os_waiting_tasks покажите.
на какие именно таблицы LCK_M_S и кто блокирует.
кто-то ж в них пишет, раз другие прочесть не могут
21 июн 16, 10:52    [19317815]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите с оптимизацией RS  [new]
StarikNavy
Member

Откуда: Москва
Сообщений: 2428
o-o,

так там результам второго запроса ,как раз по sys.dm_os_waiting_tasks
второй грид
таблица [ReportServerTempDB].dbo.SessionLock
в топе всегда блокировок
21 июн 16, 10:56    [19317835]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите с оптимизацией RS  [new]
o-o
Guest
так а зачем мне системные процессы,
да еще и с не теми ожиданиями.
у вас же с S-блокировками висят.
а в деталях что?
ни одного юзера, ни одного LCK_M_S ожидания
21 июн 16, 10:59    [19317861]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите с оптимизацией RS  [new]
o-o
Guest
select wt.*
from sys.dm_os_waiting_tasks wt
     join sys.dm_exec_sessions s
        on wt.session_id = s.session_id
where s.is_user_process = 1 and s.session_id <> @@spid
21 июн 16, 11:03    [19317883]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите с оптимизацией RS  [new]
StarikNavy
Member

Откуда: Москва
Сообщений: 2428
o-o,

select *
 FROM 
             [sys].[dm_os_waiting_tasks] w
 INNER JOIN  [sys].[dm_exec_sessions] s ON w.[session_id] = s.[session_id]
 INNER JOIN  [sys].[dm_exec_requests] r ON s.[session_id] = r.[session_id]
 CROSS APPLY [sys].[dm_exec_sql_text](r.[plan_handle]) q
 CROSS APPLY [sys].[dm_exec_query_plan](r.[plan_handle]) p
 WHERE 1=1
 and w.[session_id] > 50


http://prntscr.com/bj09cf
http://prntscr.com/bj09j8

опять
PROCEDURE [dbo].[CheckSessionLock]
21 июн 16, 11:05    [19317897]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите с оптимизацией RS  [new]
StarikNavy
Member

Откуда: Москва
Сообщений: 2428
причем эта процедура ( [dbo].[CheckSessionLock])индекс кластерный использует. не понимаю ((

http://prntscr.com/bj09wy
21 июн 16, 11:08    [19317915]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите с оптимизацией RS  [new]
o-o
Guest
у вас там одни пишут, другие читают,
оттуда в топе ожидания блокиривки S и X.
надо смотреть, на какие таблицы и кто.
ну или может вам поможет RCSI
или вынос репортистики отдельно
21 июн 16, 11:09    [19317923]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите с оптимизацией RS  [new]
StarikNavy
Member

Откуда: Москва
Сообщений: 2428
o-o,
 
select wt.*
from sys.dm_os_waiting_tasks wt
     join sys.dm_exec_sessions s
        on wt.session_id = s.session_id
where s.is_user_process = 1 and s.session_id <> @@spid


http://prntscr.com/bj0bud
21 июн 16, 11:11    [19317936]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите с оптимизацией RS  [new]
StarikNavy
Member

Откуда: Москва
Сообщений: 2428
o-o,

>>или вынос репортистики отдельно

уже. не помогло ((
21 июн 16, 11:12    [19317944]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите с оптимизацией RS  [new]
o-o
Guest
connect: Blocking in SSRS ReportServer Database

Status :
Closed as Won't Fix
21 июн 16, 11:14    [19317952]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите с оптимизацией RS  [new]
o-o
Guest
StarikNavy
o-o,
>>или вынос репортистики отдельно
уже. не помогло ((

и не поможет.
оно не на юзерских таблицах, это не ваши писатели/читатели.
как вы и написали в первом посте
StarikNavy
дедлоки и блокировки на таблице [ReportServerTempDB].dbo.SessionLock

это косяк MS, см. линк выше
21 июн 16, 11:17    [19317977]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите с оптимизацией RS  [new]
StarikNavy
Member

Откуда: Москва
Сообщений: 2428
o-o,

ооо! вот, вроде похоже
я правильно понял
Please remove the update statement - so unnecesssary update is gone and blocking does not happen on heavy load.


PROCEDURE WriteLockSession

вот это закомментить?
		UPDATE [ReportServerTempDB].dbo.SessionLock WITH (ROWLOCK)
		SET SessionID = SessionID
		WHERE SessionID = @SessionID;
21 июн 16, 11:21    [19318007]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите с оптимизацией RS  [new]
o-o
Guest
я чего-то не нахожу такое про update.
вот еще ссылка по этому поводу:
SSRS Blocking Processes
товарищ говорит
автор
Unfortunately there is not much you can do about this, this behaviour is by design.
The problem manifests itself when user sessions time out because the report is taking too much time.
You can try to improve the reports, or configure the session timeout to be a bit longer than the longest running report

разве что оптимизировать отчеты, чтобы долго не выполнялись
21 июн 16, 11:31    [19318058]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите с оптимизацией RS  [new]
StarikNavy
Member

Откуда: Москва
Сообщений: 2428
o-o,

вот какого мазефака, проблема найденная еще в 2008Sp2 перекочевала в 2012Sp3?
сделал, буду смотреть

огромное спасибо в любом случае! мой гугл не столь велик ))
21 июн 16, 11:32    [19318065]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите с оптимизацией RS  [new]
StarikNavy
Member

Откуда: Москва
Сообщений: 2428
o-o
разве что оптимизировать отчеты, чтобы долго не выполнялись

в этом направлении тоже уже выкопал что смог
нужны архитектурые изменения, для дальнейшей оптимизации
а так да - процедуры формируют набор даннных, не очень быстро
но полдений мониторинг на проблемы самого репортинга показывал
21 июн 16, 11:35    [19318082]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите с оптимизацией RS  [new]
buser
Member

Откуда: Санкт-Петербург
Сообщений: 4542
StarikNavy, аргумент?
21 июн 16, 11:41    [19318118]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите с оптимизацией RS  [new]
StarikNavy
Member

Откуда: Москва
Сообщений: 2428
buser,

спасибо. поизучаю. пока по другим задачам убежал
21 июн 16, 11:46    [19318136]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить