SSIS 中的并行执行是否正常工作?

Does parallel execution in SSIS work correctly?

谁能说“ddl 和 dml 命令中有优先级吗?”

因为,我遇到了一个场景,我有一个 ssis 包,其中我在控制流中有 一个数据流任务,其工作是从平面文件源传输数据(文件名:Table_A,有 50 条记录)到 OLEDB 目标(Table_A)。我在同一个控制流窗格中有另一个名为 Execute SQL Server command 的任务,它从同一个 table (Table_A) 中删除全部数据。

运行第一次使用这个包后,我观察到这两个任务 运行s 并行。

1st 运行: 两个任务都成功执行并带有绿色勾号。数据库中有数据(所有 10 条记录)。数据没有被删除任务删除。

第 2 个 运行: 两个任务都成功执行并带有绿色勾号。所有数据都已删除。

3rd 运行: 两个任务都成功执行,并带有绿色勾号。没有数据,之后我 运行 包裹了多少次,我看到 table.

中没有数据

现在,谁能说出哪个任务正在执行,为什么我在第一个 运行 中看到数据而在第二个 运行 中没有看到数据。

是的,如果没有强制任务按特定顺序 运行 的优先级约束,那么它们将 运行 并行。无法保证他们 start/finish 的顺序。

您所见的合理解释是:

1st 运行 - Delete 任务先完成,然后 DataFlow 任务填充 table

第 2 个 运行,以及此后所有 运行 秒,DataFlow 任务最先完成,Delete 任务最后完成,删除所有数据。