SQL表EexecuteQueue中有1,00,000个更新语句
以下是我打算做的步骤。
识别数据库服务器的逻辑处理器。
EexecuteQueue表中可用的查询将被拆分为(逻辑处理器-2)的编号,并在不同的线程中执行。
我的假设是,不是顺序执行1,00,000个更新语句,而是并行执行25,000个更新语句(如果我们有4个线程)。
我的问题 我的假设是否正确? 在CLRSQL中用户线程是否有用?
提前致谢。
答案 0 :(得分:0)
我的假设是,不是顺序执行1,00,000个更新语句,而是并行执行25,000个更新语句(如果我们有4个线程)。我的假设是否正确?
是的,但完全无关紧要。在4个线程上执行25k操作绝不意味着比在单个线程上执行100k操作更快。这种假设至多是天真的。您需要确定瓶颈并根据您的发现相应地解决它们。阅读How to analyse SQL Server performance。
在CLRSQL中使用线程是否有用?
没有
要加快批量更新,请使用基于集的操作。减少往返次数。批量提交。