【问题标题】:SSIS package fast in visual studio but slow in SQL Agent jobSSIS 包在 Visual Studio 中速度很快,但在 SQL 代理作业中速度很慢
【发布时间】:2019-06-12 15:28:47
【问题描述】:

我开发了一个 SSIS 包,其中我有一个 数据流任务,它将数据从一个表插入到另一个表(使用 左外连接) 在 sql server 2014 数据库中。当我从 Visual Studio “手动”运行它时,它会在大约 1 分钟 内运行。 我有一个工作计划每天运行两次,在这个工作中,这个过程大约需要 2 小时

我读到将连接属性中的 Delay Validation 更改为“True”应该会有所帮助,但它没有。

我找不到任何其他解释这种现象的原因。

感谢您的帮助!

【问题讨论】:

  • 您需要告诉我们:此 Visual Studio on 是否与运行作业的服务器相同?如果不是,那是一个可以解释它的变量。在源数据库上运行sp_Who 以查看问题是否存在。您的数据流是简单的来源和目的地,还是其中有转换。
  • 我不确定我是否理解这个问题,但视觉工作室在我的电脑中是本地的,所以我认为它不是同一台服务器。关于数据流 - 它是一个简单的表作为源和目标。我所做的转换只是添加一个源表中不存在的新列。我通过另一个简单表的合并连接来做到这一点。
  • 当你连接到一个服务器是SSMS然后去访问SQL Agent,那个服务器是什么?它也是你的本地电脑吗?我猜是的。
  • 这不是我的电脑。我正在连接到特定服务器,而不是我电脑中的本地服务器。
  • 当您在 Visual Studio 中运行包时,它会在您的 本地 PC 上运行。因此,数据会从您拥有的任何 source 传输到您的本地 PC,然后再传输到您拥有的任何 target。当您在 SQL 代理中运行它时,它会在“特定服务器”上运行。数据从您的服务器,然后到目标。在第一种情况下,网络可能要好得多。所以你需要了解其中涉及的四个服务器。您的源服务器、目标服务器、笔记本电脑、SQL Server,并了解网络流量。那可能是它,或者它可能与它无关

标签: sql-server ssis


【解决方案1】:

我遇到了类似的问题,结果证明它与 SQL Server 代理作业使用的代理凭据有关。只需用新代理更改代理即可解决问题

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-01-18
    • 1970-01-01
    • 2015-11-20
    • 2021-05-02
    • 1970-01-01
    • 2012-06-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多