SQL Server2000服务器功能合并
2007-12-27 15:30:15 来源:WEB开发网这种反传统的设计为系统管理和 SQL Server 的性能优化带来了新的问题。最大的问题是,随着数据库的增多,支持大量存储过程所需要的内存也在成倍地增加。对于 SQL Server 来说,需要具有虚拟内存空间,以便为每个数据库上的每个过程编译执行计划,然后将该计划保存在过程高速缓存中。对于 PACE 应用程序来说,为 500 个数据库高速缓存的执行计划数量为 200*500,即 100000 个高速缓存条目。PACE 数据库的数量越多,所需的服务器过程高速缓存大小就越大。如果执行计划的数量超出了过程高速缓存能够存储的数量,将对执行重新进行编译,这将减少处理查询的吞吐量。利用传统的方法(例如使存储过程参数化)不能解决此问题。
进行有效的调整需要完成特定的配置,以增加用于过程高速缓存的有效内存空间。其他问题还包括如何有效地利用 CPU,以处理由于数据库和用户数量增加而导致频繁发生并发活动的情况,以及如何有效地利用最佳磁盘布局和最佳恢复模式。
使用多个实例
使用多个实例可以增加每台服务器上的数据库数量和工作负荷
当数据库的数量和相应的工作负荷达到一定水平后,将多个 SQL Server 实例中的数据库分组是一个好办法,因为这样可以缓解内存压力。为每个实例的服务器过程高速缓存分配更多内存可以获得良好的性能,并能够提供更好的操作和安全隔离。
测试表明,使用多个实例可以增加数据库的总数以及系统上产生的相应工作负荷,同时还能维护每个数据库的吞吐量。
图 1 表明,当 PACE 数据库的数量从 500 增加至 4000 时,单个实例的性能将降低。但是如果分散到 8 个实例上,每个实例上运行 500 个数据库,那么每分钟的事务处理数量是在一个实例上运行 500 个数据库时的 8 倍。在 8 个实例中的每个实例上运行高工作负荷的 500 个数据库几乎利用了此硬件配置中的全部 CPU 容量,所以通过在 16 个实例中的每个实例上运行 500 个数据库来增加数据库的总数不能增加总吞吐量(但是,系统仍然显示了一个可接受的吞吐量)。
- ››sql server自动生成批量执行SQL脚本的批处理
- ››sql server 2008亿万数据性能优化
- ››SQL Server 2008清空数据库日志方法
- ››sqlserver安装和简单的使用
- ››SQL Sever 2008 R2 数据库管理
- ››SQL SERVER无法安装成功,sqlstp.log文件提示[未发...
- ››Sql Server中通过父记录查找出所有关联的子记录
- ››SqlServer触发器、存储过程和函数
- ››SQL Server 中的事务(含义,属性,管理)
- ››Sqlite数据库插入和读取图片数据
- ››Sql server 2005拒绝了对对象 'xx表' (数...
- ››Sql server 2005拒绝了对对象 'xx表' (数...
赞助商链接