基于SqlServer数据库性能调整及优化的研究.docVIP

基于SqlServer数据库性能调整及优化的研究.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于SqlServer数据库性能调整及优化的研究   摘要:本文对SqlServer数据库性能调整及优化进行研究,介绍了数据库优化的重要性,指出了首先通过系统优化来提高SqlServer的整体性能,主要手段有优化索引、优化查询语句、增加冗余数据、分割表、分割数据库物理数据以及日志文件等手段。接下来又对硬件瓶颈进行分析,如何有针对性地升级硬件来有效提升SqlServer的整体性能,包括磁盘IOPS性能、磁盘吞吐量、CPU并发性能、系统内存、网络带宽五个方面。   关键词:SqlServer数据库;系统优化;性能调整   中图分类号:TP311.13 文献标识码:A 文章编号:1007-9416(2018)04-0040-02   随着信息系统的普及,越来越多的公司使用ERP、WMS、OA等现代化信息系统管理业务流程,这些系统无一例外地依赖数据库做支持。数据库系统的性能直接影响着整体信息系统的性能。随着系统长时间的运转,很多企业出现了数据库性能下降,系统运行以及查询出现缓慢的情况,如果盲目升级硬件,往往支出与收效不成正比,只有针对性地进行优化与升级才能起到事半功倍的效果。本文对SqlServer数据库系统的优化措施进行探索和研究,从软件和硬件两个方面进行分析,在提高SqlServer数据库系统性能的同时,以最小的风险和成本,达到系统优化的目的。   1 SqlServer数据库的系统优化   在Sqlserver数据库使用中,如果出现查询、更改数据性能低下等情况,应首先分析是否能够通过系统的优化来解决。   1.1 优化索引   优化索引是加快数据库查询速度的方法,随着业务查询的增加,索引也应该进行相应地进行调整,尽量避免全表扫描。但索引也不是加的越多越好,增加索引虽然提升了查询速度,但也会降低数据插入的速度。因此需要对正在使用的查询进行分析,使索引与程序整体结合起来,才能产生最佳的优化方案提升查询速度。   同时还需要关注索引的碎片问题,随着数据库使用伴随的增删操作,会产生索引碎片,降低查询的性能。当碎片程度小于20%时通常无需处理,当碎片程度在20%-40%之间时建议重组索引,当碎片程度大于40%时建议重建索引,来提升查询性能。   1.2 优化查询语句   通过查看SqlServer活动监视器,能够分析近期占用资源比较大的查询,然后优化查询语句的执行效率,尽量避免在where条件中使用null判断,like模糊、不必要的表连接、不必要的条件判断等耗时的操作。   1.3 增加数据冗余   对于经常进行增改的表,增加一个只读的冗余?浞荩?能够有效避免Lock锁引发的性能问题,提升并发性能;对于经常使用的统计值,单独建立数据库表,进行数据落地,能够大幅缩减每次计算的时间。   1.4 分割表   对于数据量很大的表,可以根据使用需求的不同,考虑按年、按类型等等手段进行分割,避免单个表过大影响读写性能,大幅提升查询筛选的效率。   1.5 分割数据库物理数据以及日志文件   对于使用频率很高的数据,可以根据数据类型进行分割,将不同的数据库数据文件、数据库Log日志文件、数据库临时文件分离到不同的磁盘上,能够进一步减少磁盘IO的延迟,提升数据库的物理读写性能。   2 SqlServer数据库的硬件优化   当系统优化已难以提升SqlServer数据库的性能时,很可能是硬件瓶颈影响了整体效能。   2.1 磁盘IOPS性能   当下数据中心普遍采用的依然是机械磁盘阵列,机械磁盘的缺点是随机读写的性能较低,通过监测磁盘读写延迟,能够有效发现是否发生磁盘读写性能瓶颈,当发生磁盘瓶颈以往普遍采用堆叠磁盘的方式提升性能,往往需要几十块甚至数百块机械磁盘的堆叠,不但占用大量机柜空间,同时发热量耗电量都不低,性能提升的效果往往也不显著。   随着固态磁盘阵列技术日趋成熟,通过使用固态磁盘阵列往往能达到立杆见影的效果。单块固态硬盘的8K随机读写IOPS普遍是SAS硬盘的50倍甚至更高,而SqlServer的存储页面即8K字节,8K随机读写直接决定了SqlServer数据库存取硬盘时的性能。   2.2 磁盘吞吐量   通过监测SqlServer数据库的数据流量能够断定是否发生磁盘吞吐量瓶颈,通过增加HBA卡通路,提高数据吞吐量,能够大幅减小光纤通道的队列深度,提高Sql任务的执行速度。   2.3 CPU并发性能   当监测SqlServer数据库运行的CPU占用率,长时间处于满载运行的状态时,通常就是同时并发执行的任务过多导致CPU产生瓶颈,此时通过增加CPU逻辑核心能够大幅增加SqlServer同时执行任务的能力。   2.4 系统内存   当系统内存发生瓶颈时,SqlServer数据

文档评论(0)

小马过河 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档