SQL Server-如何改进/优化链接服务器上的远程扫描

时间:2018-10-09 15:22:10

标签: sql-server azure

我试图弄清楚如何在MS Azure上托管的VM和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 ParametersNestedQueries)完全没有帮助。还有其他我想念的东西吗?谢谢

0 个答案:

没有答案