在多个链接服务器上执行存储过程与单独连接

Execute stored procedure on multiple linked servers vs separate connections

我必须使用存储过程从多个数据库中获取一些数据。我正在使用 SQL Server 2008 R2 和 2014。 我可以将每个存储过程放在他自己的服务器上,或者将所有过程放在一个服务器上,并将服务器链接到其余数据库。

我想知道每种方法在性能方面的优缺点,因为每天使用的返回数据将在 2000 行左右,但最多可达 30000 行。

最佳做法是每个存储过程都在自己的服务器上执行。即使你会从一台带有链接服务器的服务器调用所有过程。

当您调用包含链接服务器的过程时,数据会在进程开始之前加载。但是你通过链接服务器调用一个过程,过程在回答你之前会在自己的服务器上处理。