【问题标题】:SQL HW to performance rationSQL HOW 性能比
【发布时间】:2010-11-18 00:06:35
【问题描述】:

我正在寻找一种方法来查找 SQL Server 中的瓶颈,但 8 核上超过 32GB 的内存和超过 32 个 Spindel 似乎是不够的。是否有任何指标、最佳实践或硬件比较(即每秒事务数)?我们每天的关闭需要几个小时,如果可能的话,我希望在几分钟内或实时完成。我无法合并超过 12k 行/秒。目前,我不得不将流量拆分到多个服务器,但它是否适合 50GB 数据库? Merge 包含在 SP 中,并尽可能保持简单 - 删除重复输入、插入新行、更新现有行。我发现我们放入单个合并的行越多,我们每秒获得的行数就越多。应用服务器运行在更多线程中,并使用其专用服务器上的所有内存和处理器。

【问题讨论】:

    标签: sql sql-server-2008 cloud scaling performance


    【解决方案1】:

    按照Waits and Queues 之类的方法来识别瓶颈。这正是 的设计目的。一旦确定了瓶颈,您还可以判断是否是硬件配置和校准问题(如果是,哪个硬件是瓶颈),或者是否是其他问题。

    【讨论】:

      【解决方案2】:

      基本思想是避免对磁盘进行随机访问,包括读取和写入。不做任何分析,一个 50GB 的数据库至少需要 50GB 的内存。然后,您必须确保索引位于与数据和事务日志不同的轴上,尽可能晚地写入,并且关键表被拆分到多个轴上。这些都是你做的吗?

      【讨论】:

      • 避免随机访问是一项挑战。没有人知道下一批会更新哪些行。实际情况是每秒约 30-40k 次合并(主要是更新),这对于现在和未来几个月来说已经足够了。
      猜你喜欢
      • 2019-11-29
      • 2018-03-10
      • 2011-07-12
      • 2020-11-03
      • 2010-12-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多