网站大量收购独家精品文档,联系QQ:2885784924

浅析SQL Server数据库的性能优化--.doc

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
浅析SQL Server数据库的性能优化--.doc

  浅析SQL Server数据库的性能优化   在一个大型的数据库中,性能成为人们关注的焦点之一,如何让数据库高效有效的运行成为广大数据库管理人员和开发人员必须要考虑的问题。性能是一个应用或多个应用在相同的环境下运行时对效率的衡量。性能常用响应时间和工作效率来表示。响应时间是指完成一个任务花费的时间,可以从以下三方面来减少响应时间:    减少竞争和等待的次数,尤其是磁盘读写等待次数    利用更快的部件    减少利用资源所需的时间   绝大多数性能的获得来自于优秀的数据库设计、精确的查询分析和适当的索引。最好性能的获得能够通过确立优秀的数据库设计,在开发时学会使用SQL Server查询优化器来实现。   为了取得更好的数据库性能,我们就需要对数据库进行优化,减少系统资源的竞争,如对数据cache,过程cache,系统资源和CPU的竞争。   在SQL Server中,有如下优化层次:   应用层大部分性能的获得来自于对你的SQL应用中查询的优化,这必须是以好的数据库设计为基础的。   数据库层应用共享在数据库层中的资源,这些资源包括硬盘,事务日志和数据cache。   服务器层在服务器层有许多共享的资源,包括数据高速缓存,过程高速缓存,锁,CPU等。   设备层指的是存储数据的磁盘及其控制器,在这一层,你应尤其关注磁盘的I/O。   网络层指连接用户和SQL Server的网络。   硬件层指可利用的CPU。   操作系统层理想地,SQL Server是一台机器的唯一主要应用,它必须和操作系统以及其他sybase软件,如Backup Server或SQL Server Monitor共享处理器、内存以及其他资源。   在大多数情况下面,我们是对应用层进行优化,,因为对应用性能的优化是大家最乐于接受的功能,其结果能被观测及检验,查询的性能是SQL应用的整个性能的一个关键。   应用层上的问题包括以下内容:   决策支持VS.和在线事务处理(OLTP)需要不同的性能策略   事务设计能够减少并发,因为长的事务保持占用锁,也就减少了其他用户对相关数据的存取   关联一致性对数据修改需要join操作   支持Select操作的索引增加了修改数据的时间   为了安全而设立的审计限制了性能   在应用层优化的选项包括:   远程处理或复制处理能够把决策支持从OLTP机器中分离出来   利用存储过程来减少编译时间和网络的利用   利用最少量的锁去满足你的应用需要   数据库层的问题包括:   建立备份和恢复方案   在设备上分布存储数据   审计操作影响性能;仅审计你所需的   日常的维护活动将导致性能的降低和导致用户不能操作数据库表   在数据库层上优化选择包括:   利用事务日志的阀值来自动转储事务日志防止其超出使用空间   在数据段中用阀值来监视空间的使用   利用分区来加速数据的装入   对象的定位以避免硬盘的竞争   把重要表和索引放入cache中,保证随时取得   服务器层的问题有:   应用的类型服务器是支持OLTP还是DSS,或者两者都支持   所支持的用户数影响优化决策随着用户数的增加,对资源的竞争会发生改变   网络负荷   当用户数和事务数达到一定的数量时复制服务器或其他分布式处理是一个解决的方法   服务器层的优化的选项包括:   优化内存一个关键的配置参数和其他方面的参数   决策是客户端处理还是服务器端处理有些处理能在客户端进行吗   配置cache的大小和I/O的大小   增加多个CPU   为空闲时间排定批处理任务和生成报表   工作负荷发生改变,重新配置特定参数   决定是否可能把DSS移到另一个SQL服务器中设备层   设备层的问题包括:   主设备、包含用户数据库的设备,用户数据设备,或数据库日志是否要镜像   怎样在设备之间分布系统数据库、用户数据库和数据库日志   为获得对堆表插入操作的高性能,是否有必要进行分区   设备层上优化的选项包括:   用多个中等大小的设备及多个控制器可能比用少量的大设备有更好的I/O性能   分布数据库,表和索引以在不同的设备上进行I/O装载   网络层   实际上,SQL Server的所有用户都是通过网络存取他们的数据。网络层上的主要问题有:   网络的流量   网络的瓶颈   网络的速度   网络层上优化的选项包括:   配置包的大小,以使其与应用的需要相匹配   配置子网   分隔出繁忙的网络运用   创建一个高容量的网络   middot 12下

文档评论(0)

ggkkppp + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档