在我当前的项目中,数据库是SQL 2005,负载大约是35个事务/秒。客户期待更多业务,并计划每秒300笔交易。目前,即使有良好的基础设施,DB也存在性能问题。典型的事务将至少有一个更新/插入和几个选择。
你们有没有在SQL 2005或2008上运行超过300 txn / s的任何系统上工作过,如果是这样的话,你使用什么样的基础设施来处理交易有多复杂?请分享您的经验。有人已经建议使用Teradata,我想知道这是否真的需要。不完全是我的工作,但对SQL可以处理多少感到好奇。
答案 0 :(得分:4)
没有性能测试就无法分辨 - 它过分依赖于您的环境(表中的数据,硬件,正在运行的查询)。
答案 1 :(得分:3)
根据tcp.org,SQL Server 2005可能每秒获得1,379个事务。 Here is a link到完成它的系统。 (该站点上有基于SQL Server的系统有更多的事务...我链接的那个系统只是我看到的第一个。)
当然,正如克拉根所说,无论你是否能够取得这些成果,这里任何人都无法说出来。
答案 2 :(得分:2)
高性能SQL Server的基础结构需求可能与您当前的结构有很大不同。
但是,如果您目前遇到问题,则问题的主要部分很可能是数据库设计错误和查询设计错误。有很多方法可以编写效果不佳的查询。在高交易系统中,您无法负担任何费用。没有select *,没有游标,没有相关的子查询,没有执行错误的函数,没有不可搜索的where子句和on on。
我建议的第一件事就是给自己写几本关于SQl Server peroformance调整的书并阅读它们。然后,您将知道系统问题可能存在的位置以及如何确定这些问题。
一篇有趣的文章: http://sqlblog.com/blogs/paul_nielsen/archive/2007/12/12/10-lessons-from-35k-tps.aspx