3

正如问题所暗示的那样,我正在关注具有多个控制流元素的转换,其中许多是数据流。

目前,控制流选项卡中的数据流对象之一亮黄色。当我通过双击或选择“数据流”选项卡打开该数据流对象时,没有任何颜色的框亮起。

这会让我相信它正在验证,也许?

有什么方法可以说明它在做什么,以及有什么步骤可以帮助加快这个过程吗?

**编辑:

我看了一下执行,看起来它卡在 50% 左右的 Pre-Execute 阶段。这个阶段是否有任何优化。

未运行的数据流的屏幕截图。(这是在控制流将此数据流任务显示为黄色时拍摄的)

在此处输入图像描述

4

5 回答 5

1

当您进入包的配置属性并选择“调试属性”时,它是否设置为在“优化”模式下运行?如果是这样,它将是黄色的,然后在完成后变为绿色/红色。您需要确保“优化运行”处于关闭状态并且“交互模式”为真。

于 2012-02-27T22:19:36.897 回答
1

如果您正在寻找的只是确定它为什么是黄色的,请查看错误列表窗口并单击警告以在需要时使其可见。这至少应该确认它是否只是验证,还是其他什么。

于 2012-02-28T14:31:55.410 回答
1

我将这些块中的每一个分解成它们自己的 DF。其中一个 DF 继续卡在 Pre-Execute 阶段。我对该 OLE DB 源运行了查询,并发现由于一些删除的索引而导致长时间运行的查询。替换了索引,变换停止挂起。

于 2012-02-29T19:29:22.007 回答
1

刚刚在 SSIS 包中遇到了类似的数据流问题。无论它必须传输多少行,在复制所有行之后,任务仍然是黄色的,并且目标表中没有数据(MS SQL Server 2012)。我可以通过删除目标表并再次发出 CREATE TABLE/CREATE INDEX 来解决该问题。

于 2013-01-23T15:43:39.427 回答
1

另一个潜在的解决方案(对于像我这样将来遇到这个问题的人)是确保组件不使用内部事务。

我今天早上发生了这种情况(数据流中的所有任务都是绿色的,但在控制流中显示为黄色),其中一个包进行了批量更新。我使用的组件有一个用于打开内部事务的复选框,该事务在允许数据流完成之前等待 SQL Server 的响应。

寻找一个复选框来关闭内部事务或表锁,然后在没有它的情况下重新运行。

于 2015-07-10T14:00:13.063 回答