Профилирование связанного сервера

Я пытаюсь оптимизировать набор хранимых процедур. Эти хранимые процедуры находятся на сервере A и выполняют следующие действия:

  • Удалить данные на сервере B на основе параметризованного запроса на сервере A

    УДАЛИТЬ ИЗ B (через связанный сервер)
    ПРИСОЕДИНИТЬСЯ К A
    ГДЕ A.x IN (@ID1, @ID2, @ID3, @ID4)

  • Вставка данных на сервер B на основе параметризованного запроса на сервере A

    ВСТАВЬТЕ В B (через связанный сервер)
    СДЕЛАЙТЕ НЕКОТОРОЕ СОЕДИНЕНИЕ НА A
    ГДЕ A.x IN (@ID1, @ID2, @ID3, @ID4)

Когда я пытаюсь профилировать хранимые процедуры, я не получаю полезный файл трассировки. Когда я отслеживаю сервер A, я вижу только выполнение хранимой процедуры, но не вижу внутренних запросов хранимой процедуры, потому что они ссылаются на сервер B через связанный сервер. Когда я отслеживаю сервер B, я не вижу запросов, связанных с хранимой процедурой на сервере A, я думаю, это потому, что хранимая процедура фактически выполнялась на сервере A.

Вкратце: как я могу отслеживать эти запросы как часть хранимой процедуры на сервере A, чтобы оптимизировать запросы, выполняемые на серверах A и B?


person Zyphrax    schedule 14.07.2009    source источник


Ответы (1)


вам необходимо отслеживать хранимую процедуру: события SP:StmtStarting и SP:StmtCompleted на сервере A и RPC:Completed на сервере B

person Mladen Prajdic    schedule 14.07.2009