我正在建立一个我预计会非常大的数据库,用于计算和数据存储.它将是一个包含10个字段的表,其中包含一个主键和两个外键.我预计每天会增加约10亿条记录.
每个记录应该很小,我将主要做插入.对于每个插入,我需要对连接记录的一个或两个字段进行简单更新.所有查询都应该相对简单.
在什么尺寸下我会开始遇到sql-server的性能问题?我见过提到vldb系统,但也听说过它们可能真的很痛苦.有一个门槛,我应该开始考虑吗?是否有比为此类设计的sql-server更好的数据库?
解决方法
当谈论超过10k / sec的交易率时,你不应该在论坛上询问建议……这与32和64种方式的TPC-C基准性能接近,这需要花费数百万美元来调整.
你会遇到什么尺寸的问题?
通过良好的数据模型和架构设计,正确调整并具有正确容量的计划服务器将不会遇到问题.每天的记录.最新公布的SQL Server benchmarks是约1.2密耳转/分.这相当于每秒16k的交易量,2005年的系统价格为600万美元(64路Superdome).要达到10k tran / sec的计划负载,你不需要Superdome,但是你需要一个非常强大的系统(可能至少16路),特别是一个非常好的I / O子系统.当进行信封容量规划时,通常会考虑每个HBA大约1K tran / sec和4个cpu内核来为HBA提供信息.并且您将需要相当多的数据库客户端(应用程序中间层)才能提供1亿美元.每天记录到数据库中.我并没有声称我在这里进行了容量规划,但我只想给你一个关于我们在谈论什么的大概.这是一个价值数百万美元的项目,这样的事情并不是通过在论坛上提出建议来设计的.