SQL Server数据库性能优化的几点分析

来源 :中国新通信 | 被引量 : 0次 | 上传用户:dalianmaowh
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  【摘要】 随着网络技术的发展,数据库应用系统也不断扩展,数据量不断增加,对数据库性能进行优化,提高效率成为了数据库应用中的重要问题。因此,本文以常用的SQL Server数据库作为探讨对象,从数据库索引的有效利用、SQL语句的改善及SQL Server的分区三方面对SQL Server数据库性能优化提出分析意见。
  【关键词】 SQL Server 数据库 性能优化
  随着数据库应用系统的不断扩展,数据库用户数量的不断增多,需要处理的业务数据量在不断增加,数据库海量数据存储在迅速增长,数据库性能的好坏变得越来越重要。数据量的快速增长是数据库性能优化研究的主要驱动力,在当前已有的软硬件基础之上,如何在数据库应用系统中获得最大的吞吐量和提高系统的处理能力是目前数据库应用系统的一个研究热点。
  一般情况下,数据库的优化指的就是查询性能的优化,让数据库对查询的响应尽可能的快。仅对数据库系统本身而言,影响到查询性能的因素从理论上来讲包括数据库参数设置,索引,分区,SQL语句。
  一、有效的利用索引
  索引在数据库的查询优化中起着至关重要的作用,一个数据库索引的好与坏,其查询性能相差很多倍。如何选择索引可显著影响所产生的磁盘 I/O,并因而影响查询性能。常用的索引有聚集索引、非聚集索引,对于非聚集索引,选择性很重要,因为如果在只有少量唯一值的大型表上创建非聚集索引,使用非聚集索引将不会节省数据检索中的 I/O。因为数据库中的索引都注重一种比较性,这样它可以快速的确定范围,定位位置,例如,某表的性别字段,非男即女,不具有可比性,如果以它为非聚集索引,查询的时候也只能一个个节点去比较。
  在这种情况下产生的 I/O 可能比对表进行连续扫描所产生的 I/O 多得多。比较适合非聚集索引的有票据编号、唯一的客户编号、社会安全号码和电话号码,简单来说,就是基于某种可比较的,有规律的数据。
  索引对于检索性能的提高有一定的帮助,但是更多的索引或是不正确的一定程度上会导致系统低效。由于用户在每次向表中添加一个索引时,数据库就得相对的做更多的工作。太多的索引甚至会产生索引碎片。因此,我们才需要建立一个“适当”的索引体系,尤其是在创建聚集索引的时候,更应该精益求精,确保数据库能够得到高性能的发挥。
  二、有效改善SQL语句
  SQL的语句大概有编译优化、执行、取值三个阶段,而第一阶段编译优化绝大多数情况下都要花掉60%的时间,所以变量的绑定是尤为重要的,SQL Server数据库有缓存区,存放一些最近使用过的SQL语句,当有一条SQL语句到达数据库服务器时,首先数据库会搜索缓存区,看它是否存在可以重用的SQL语句,如果存在,可以不用编译优化,因为缓存区里都是编译优化好了的SQL語句,直接可以执行,节约很多时间。
  如果没有发现可以重用的SQL语句,则必须要完全经过语句编译分析,优化计划,安全检查等过程,这不仅仅会大量耗费CPU功率,而且还在相当长的一段时间内锁住了一部分数据库缓存,这样执行SQL语句的人越多,等待的时间越长,系统的性能会大幅度的下降。
  三、合理利用SQL Server的分区
  SQL Server的分区在一些超大型的表中是有着非常重要的作用。分区是逻辑上的一种区分,在数据访问的情况下,由于一个表就是一个整体,所以也就是对整个表或整个表的索引进行了访问,所谓分区,通俗点讲,就是把表按一定的规律划分成更小的逻辑单位,在进行数据访问的时候,不以表为单位进行访问,而是在表的基础上,判断数据在哪个分区,然后对特定的分区进行访问。正确的分区对于提高查询性能有很大的作用。例如,有一个非常大的表,存储了一些销售记录,现在查询总是按销售季度来执行这个查询,而每个销售季度包含几十万个记录,通常你只是要查询这个数据集的一个相当小的数据,但是给予销售季度的检索却的确是不太可行的。
  这个索引可能指向无数个记录,而以这种方式执行索引范围扫描是可怕的。为了处理许多查询任务,系统需要执行全表扫描,但是结果却必须扫描几百万个记录,其中绝大部分不使用我们的查询任务。使用智能分区方案,就可以按季度隔离数据。这样当我们为任意指定的季度去查询数据时,结果将只是扫描那个季度的数据。这是所有可能的解决方案中最好的方案。
  数据库优化是一个很广的范围,涉及到的东西也比较多,并且每个特定的数据库,其具体的优化过程也是不一样的。因为优化的很大一部分最终都要跟具体的数据库系统细节打交道,在此只能就常用的数据库以及经常用到的的东西进行一些分析,以期使数据库系统的效率得到提升,方便我们的使用。
  参 考 文 献
  [1]杨柳. SQL SERVER 数据库的性能分析与优化策略研究[J]. 科技创新导报2011,(1):15-19.
  [2]刘芬. 关于SQL数据库的性能优化问题的研究[J]. 软件. 2012(06)
其他文献
2018年8月,非洲猪瘟疫情的爆发对国内生猪养殖行业和猪肉市场带来显著影响,未来国内猪肉供给将呈现较大降幅。应对疫情冲击又面临养殖户补栏乏力、产销区运输不畅和进口调节
2013年,随着东方航空旗下的中国联合航空有限公司酝酿转型低成本航空、东航与澳洲航空申请在香港合资筹组捷星香港、海航旗下的西部航空宣布转型廉航、吉祥航空宣布在广州组
2月25日,衡阳市林业局全体党员聚集在五楼会议室,认真观看视频,倾听省委党校覃正爱、龚永爱教授关于开展保持共产党员先进性教育活动的辅导课。这是该局在开展先进性教育活动中
<正> We investigate the enhanced Kerr nonlinearities in four-level atomic vapors driven by a coupling,probe andmicrowave fields.Under the optical one-photon and
中科院生态环境研究中心副主任杨敏告诉记者:2013年,院子里的玉兰树只有一人多高,CEWE(中科院-发展中国家科学院水与环境卓越中心简称CEWE)刚刚成立,六年过去,生态环境中心的
电子商务的普及让企业与普通客户共同获利,电子商务平台的设计也让很多程序员心向往之。本系统是基于B/S,即浏览器/客户端基础上设计的一个B2C模式的电子商务网站。网站编写
对在有一个无限的限制潜力的圆柱的量电线(CQW ) 中的线性、非线性的光吸收的电子声子相互作用影响被调查。光吸收系数被使用 compact-density-matrix 途径和反复的方法获得,
怎样提高英语听力水平一直是困饶大学生的一个难题.特别是英语专业四、六级考试的听力部分,做的不尽如意,许多学生甚至还产生畏难情绪.本文就大学生听力畏难情绪的原因进行了
山核桃是世界著名油料及用材树种,其价值高,适应性强,是山地开发的好品种.近几年靖县排牙山林场在山核桃嫁接繁殖上取得了可喜成绩,现就山核桃嫁接技术作简单介绍.
近几年来,攸县县委、县政府及时调整林业发展思路,提出林业"以可持续发展为根本,改善生态环境是前提"的发展策略,采取一系列措施,真抓实干,使全县生态公益林建设快速发展.