SQL Server - Как улучшить / оптимизировать удаленное сканирование на связанном сервере - PullRequest
0 голосов
/ 09 октября 2018

Я пытаюсь понять, как оптимизировать / улучшить следующее: на виртуальной машине, размещенной в MS Azure, и базе данных, также размещенной в MS Azure.Помимо экземпляра, размещенного в MS Azure, есть еще один экземпляр (локальный), который имеет выделенную базу данных для интеграции между двумя программными приложениями, и между этими двумя экземплярами есть связанный сервер.

В последнее время я заметил, что удаленное сканирование занимает до 100%, вызывая низкую производительность некоторых хранимых процедур, которые обновляют базу данных, размещенную в Azure.

Вот как выглядит план выполнения:

enter image description here

Часть хранимой процедуры, выполняемой для базы данных из локального экземпляра, которая выполняет некоторыеобновления на связанном сервере выглядят следующим образом:

UPDATE docl
SET docl.udfvalue1=WMSC.QtyReceptioned,
    docl.udfvalue2=WMSC.QtySent,
    docl.Stringfield1=WMSC.WAREHOUSE
FROM  MyLinkedServer.DataBase.dbo.DocLines docl
INNER JOIN #WMS_Confirmed WMSC on docl.gid=WMSC.GID

UPDATE es 
SET es.ADFLAG3 = 1
FROM MyLinkedServer.Database.dbo.DocHeader es
WHERE es.OrderDate>'2018-01-01' -- OrderDate is one of the indexes on `DocHeader` table
AND EXISTS (SELECT 1
              FROM #WMS_Confirmed WMSC 
              WHERE es.gid = WMSC.fDocGID
             );

То, что я нашел в Интернете, например, включение Dynamic Parameters и NestedQueries на провайдере связанного сервера, вообще не помогло,Есть что-то еще, что мне не хватает?Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...