gpt4 book ai didi

sql-server-2008 - 如何提高在 2005 上运行良好的 SSIS 2008 包的更新性能?

转载 作者:行者123 更新时间:2023-12-04 06:56:38 25 4
gpt4 key购买 nike

我正在将我的数据仓库从 SQL Server 2005 迁移到 SQL Server 2008。表更新有很大的性能下降。插入物效果很好。

我在两个环境中使用相同的 SSIS 包,但 2008 仍然没有正确更新。

我已经在所有表上运行了 update stats full。该过程使用临时表。我删除了所有索引(更新所需的索引除外),但这些措施均无济于事。我还写了一个更新语句来模仿 SSIS 正在做的事情,并且它运行得像预期的那样快。

更新过程使用数据流任务(任务中还有其他事情,比如插入到processed 表中以了解更新中使用了哪些数据)。

这是一个全新的数据库,上面没有运行任何其他东西。有什么建议吗?

捕获统计IO

  • 2005,CPU=0,读取=150
  • 2008 年,CPU=1700,读取=33,000

数据库内存:

  • 2005 年,总计 40GB/18 个 SQL Server
  • 2008 年,总计 128GB/110GB SQL Server

最佳答案

在执行计划中发现了问题。 2008 年的计划是使用不同的表构建更新语句。背景:由于我们使用索引 View ,在查询这些表时不允许任何其他访问,因此我们构建了 iView 使用的更小/更精简的表,而不是我们的维度,以保持它们对用户可用。优化器正在选择这些表,而不是我们在查询中指定的表。

我原来做explain plans的时候用错了query,没有这个功能。这一切都不同了。

谢谢!

关于sql-server-2008 - 如何提高在 2005 上运行良好的 SSIS 2008 包的更新性能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14840151/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com