INSERT INTO SELECT语句与远程服务器的执行时间较长

时间:2016-03-30 11:45:13

标签: sql-server tsql

我在MS SQL Server Express版中遇到以下问题。当执行以下SQL查询5000次并且每次递增SEQ数(1-5000)时,执行时间约为38秒:

INSERT INTO [EXPLORER\SQLEXPRESS2014].CentralServer.dbo.f_ORDRE 
SELECT * FROM [EXPLORER\SQLEXPRESS2014].Local.dbo.ORDER WHERE SEQ = 1;

所有活动都在本地计算机上完成。总时间如预期。 ORDRE的记录大小约为560字节。现在,如果我按如下所示对远程服务器执行INSERT,则会为5000条记录获得接近9分钟的执行时间。 FRACTALSERVER具有1 Gbit以太网连接。网络数据包大小从4096更改为8192字节,执行时间没有任何变化:

INSERT INTO [FRACTALSERVER\FRACTASQLEXPRESS].CentralServer.dbo.f_ORDRE 
SELECT * FROM [EXPLORER\SQLEXPRESS2014].Local.dbo.ORDER WHERE SEQ = 1;

为什么最后一种情况下的执行时间如此之长(14倍长!)。我无法理解。任何人都可以暗示我做错了什么,或者说明问题可能出在哪里?

0 个答案:

没有答案