如何使不同的SSIS包顺序以避免锁定?

时间:2015-11-17 11:00:40

标签: sql-server ssis locking ssis-2008

我在同一台服务器上运行了两个不同的 SSIS包(ABC,XYZ)。我希望包XYZ仅在包ABC未运行时运行。我也希望XYZ等到ABC完成执行并且ABC完成后开始执行。

ABC每20分钟运行一次(通常在20分钟内完成,但有时需要更多),XYZ每天运行一次。

我可以在XYZ开头使用脚本任务(GetRunningPackages())完成上述任务。

还有其他方法吗?请建议上述问题导致锁定。

2 个答案:

答案 0 :(得分:1)

您可以将ABC的开始和停止记录到表中,然后XYZ可以检查最近的行,如果有起始值但没有相应的停止值则不会启动。

我们已经取得了良好的效果,它可以很容易地扩展以支持多个包装。

答案 1 :(得分:1)

你应该查找进程间通信。 命名信号量将在这种情况下工作,因为它只允许一个当时运行。进程间通信有更多选项。