Хранимая процедура SSRS (время ожидания?). Используете слишком много связанных серверов? - PullRequest
0 голосов
/ 31 мая 2011

Мы используем один общий источник данных ds1, который подключается к серверу main_server, который содержит все хранимые процедуры для генерации наших отчетов.

Одна из хранимых процедур usp1 просто выполняет другую хранимую процедуру на другом сервере another_server:

exec another_server.another_database.dbo.usp1

Когда я выполняю usp1 на main_server, все работает нормально. Он работает почти с той же скоростью, как если бы я только что перешел на another_server и выполнил оттуда .... Что я и ожидал ...

Однако, когда я пытаюсь запустить отчет с нашего сервера отчетов, он терпит неудачу. Когда я наблюдаю за его работой, он почти сразу переходит в режим ожидания и остается там.

У нас все наши тайм-ауты установлены на 40 минут, так что это не должно быть нашей проблемой, так как отчет работает за 15. Есть мысли?

Спасибо ...

Ответы [ 2 ]

0 голосов
/ 31 мая 2011

Со связанными серверами ваша хранимая процедура может скопировать ВСЕ данные, которые ей нужны, перед выполнением каких-либо объединений.

Выезд: http://blogs.msdn.com/b/dataaccesstechnologies/archive/2010/06/30/linked-server-performance-heterogeneous-databases.aspx

0 голосов
/ 31 мая 2011

Может быть, службы отчетов учетной записи, используемые для запуска отчета, не имеют правильного доступа или прав для запуска sp на другом сервере?

...