【发布时间】:2021-05-21 04:21:15
【问题描述】:
我在 SQL Server 数据库中有 3 个存储过程。
EXEC sp_test_1 (ID)
GO
EXEC sp_test_2 (ID)
GO
EXEC sp_test_3 (ID)
GO
执行此操作时,每个存储过程需要 15 分钟才能完成,总共需要 45 分钟。
当我在每个会话中执行每个存储过程时。
Session 1 : EXEC sp_test_1 (ID)
Session 2 : EXEC sp_test_2 (ID)
Session 3 : EXEC sp_test_3 (ID)
它在 15 分钟内完成,并提供了良好的性能提升。
我正在寻找 SQL Server 中的任何选项来实现并行性和除 SSIS 之外的任何其他方向。
任何人都可以建议一种方法吗?
【问题讨论】:
-
@EvaldasBuinauskas 我已经完成了,但足够具体的答案来解决
-
您是尝试从任何 ETL 工具并行调用这 3 个还是仅使用 SQL?
-
在 ETL (SSIS) 我知道流程。我只在 SQL 中查找
-
SQL 按顺序运行,@mohan111。您不能编写包含同时运行的多个语句的批处理。如果要同时运行 3 个单独的语句,则需要 3 个单独的连接来运行所述语句。这就是您可以在 SSIS 中实现此目的的原因,因为您有 3 个执行 T-SQL 任务,每个任务运行不同的语句。
标签: sql sql-server sql-server-2012 ssms