最新韩版传奇发布网

最好玩的变态传奇资源大宝库.....

当前所在位置:主页 > 玩家介绍 >

 

数据库优化技术的分析与探讨

时间:2011-09-27 11:33  作者:小编

  从范式优化、索引优化、及查询优化探讨数据库优化设计的方法。在逻辑设计阶段,根据范式优化的要求设计数据库逻辑结构,权衡利弊选出折衷的方案;在数据库物理设计阶段,根据索引优化中的要求在有关属性或属性的组合上建立索引.以优化数据库物理结构;在数据库查询阶段,优化数据查询语句,提高语句的执行效率。关键词:数据库;范式优化;索引;查询优化中图分类号:3文献标识码:文章编号:1009?30,14(2011)12-2755?02随着数据库技术的发展,人们越来越依赖于计算机化的业务数据。但由于传统的基于文件的数据存储和检索方法不灵活且难于管理.冈而数据库优化设计成为人们关注的题。如何有效地组织和处理大型数据库的海量数据,使得人们能方便、准确、快捷地完成数据的存取操作热血传奇,成为对数据库的建设及使用需要锯决的问题。数据库的数据存取主要有四个不同的调整级别,第一级调艇是操作系统级包括硬件平台,第-级调整是级的调整,第三级是数据库设计级的调整,最后一个调整级是级。通常依此四级调整级别对数据库进行调整、优化,数据库的整体性能会得到很大的改善。所以,数据库的开发过程中,程序员能够在数据库设计阶段,能够根据数据库实际使用需要.采用适当的范式优化对基本表进行合理的设计和调整,同时在数据库应用程序开发时,注重提高查询语句的执行效率,将会在很大程度提高数据库性能。
  数据库范式优化在数据库开发过程中,需要利用范式对基本表进行规范化。一般情况下,基本表的设计要求达到第范式.第范式的特征是在消除函数依赖的基础上消除传递依赖,从而使非主键的其他属性只依赖于主键属性。
  第范式的使用消除了由于数据冗余带来的插入、更新和删除操作产生的不可预期的副作用,同时保证了良好的的参照完整限制和实体完整性限制,热血传奇使得数据容易维护。
  将规范化作为数据库开发过程的完善具时,首先利用?图建立概念数据模型,并使用转换规则生成基本表.然后利用范式分析各个表,最终保证基本表及其字段之间的关系满足第三范式。基于第二范式设计的数据库表虽然有其优越性。但是,满足第三范式的数据库设计,往往不一定是最好的设计。
  作为一项设计标准,第三范式“消除冗余以避免更改异常”偏重于数据库的更改功能。在数据库设计中,当分解表来符合范式要求时,表的数量会增加,虽然数据库越容易更改,但查询的难度会随之增加。如果数据库在实际应用中主要用于查询.那么过多追求避免更改异常不见得是一个恰到好处的设计1:标。另外,加入更多的表容易导致过程从多表获取数据时引发大量的连接操作,占用额外的磁盘操作和处理逻辑.因此减慢了系统速度。所以,在许多过程要频繁访问一个表、子集数据访问、重复计算和冗余数据的情况下,需要对基本表进行结构优化和性能调整。1.1利用分割表减小数据量当一个表包含过大数据量,而主要过程反复访问一个表中的部分行或者部分列而不需要访问整个表时,可以水平分割表或者垂直分割表。可以将被频繁访问的列数据单独存为一个子集表。这些操作都是在不用考虑磁盘的开销的情况下。同时分割表也增加了维护数据完整性的代价。1.2存储衍生数据对一些要做大量重复性计算的过程而言,可以考虑增加相应列存储计算结果。如在库存表中每个仓库的库存总量由产品数量相加所得,而库存总量又频繁被查询,则有必要将库存总量作为一个单独列加入到表中。1.3增加相关属性字段规范化规则要求独立存储外键,以表示:关联。如果外键表示代码,而用户需要同时得到代码以及相应的名称.则可以将相应列和代码存储在一起,减少一些连接操作。用户如订单报表的输出需要订单号、产品名、订单金额等字段,而订单号和产品名在不同表中,查询时需要对这两个表进行连接查询,为了提高查询速度,可以在订单表中增加产品名字段。1.4增加派生列储存派生数据可以减少表的连接操作。省去检索数据以计算派生数据的麻烦。如订单总量频繁要求被输出,而计算订单总量的两个数据订单数量和产品单价分别在订单表和产品表中,那么可以增加订单总量字段到订单总量表中,从而避免了两次连接操作。虽然范式的级别越高,关系模式越不会出现冗余和更新异常等不合理情况。但是关哪样不好的系模式的数目在不断的分解过程中将会不可避免的逐渐增加,必然会导致连接操作的增多,而连接操作是一个开销非常大的运算,过多的关系连接必然加重数据库系统的负收稿日期:2011-02-21作者简介:席洁(1983-),女,陕西西安人,助教,主要研究方向为计算机网络。本栏目贲任编辑:代影?-一?-数据库与僖息蕾?-2755刚电脯知识与技术第7卷第12期(2011年4月)担.影响系统效率新游戏,所以说模式的分解切不可一味追求其规范化程度而忽略了实际的使用方便性,在应用当中我们需要结合实际情况酌情考虑.尽可能使二者达到一个比较均衡的状态。
  2数据库查询优化查询是数据库系统中使用最频繁、最基本的操作。
  对于一个给定的查询,通常会有许多种可能的执行策略,查询优化就是从众多策略中找出高效执行策略的处理过程,是实现的关键技术,对系统性能有很大影响。一些大规模的系统。数据量非常大,全表扫描无疑耗费大量时间.查询操作所基于的语句在语句中是代价最大的语句,由程序员提交的语句是系统优化的基础,如果能够采用比全表扫描更好的查询策略,则可以使查询时间大大降低,提高查询效率。2.1合理使用索引合理的使用索引可以加快数据检索速度.从而大大提高查询效率,其使用原则如下:1)红经常进行搜索的列上、主键列上以及经常进行连接但是没有指定为外键的列上建立索引。2)在频繁进行排序或分组(即进行或操作)的列上,以及经常需要根据范围进行搜索的列上建立索引。3)对于那些只有很少数据值的列不应该建立索引。如性别列。
  取值很少的列结果集的数据行占了表中数据行的很大比例,建立索引并不能提高查询效率。4)对于数据类型为、等这类数据量大取值通常很少的数据不必要建立索引。
  5)经常执行大量插入和删除的表不应当包含很多索引。6)避免在组合列上使用索引,大多数优化组件可在同一个表上使用多个索引,相比之下组合列上的索引不够灵活。2.2避免放弃使用索引的语句操作1)当中尽量不采用性能比较低的操作符,强烈避免使用操作符。
  相应的语句操作符可以由或代替。
  2)或操作会导致全盘扫描而放弃使用索引,如果并非严格要求为值,在使用时应修改为和某一个缺省值进行比较。如:改为>0或>”(空值)3)操作符在进行表链接后会对所产生的结果集进行排序运算,删除重复的记录再返回结果,在没有重复的记录的情况下可以使用只是简单的将两个结果合并后就返同的代替技术。4)避免使用语句.尽量明确查询字段,不要返回用不到的任何字段。5)尽量避免在可以使用索引的列卜使用函数。函数将排除使用索引的町能性。6)如果列上的数据类型与相关常量值不匹配,将发生隐式转换,如非2011玩这个游戏条件将导致列隐性转化为字符数据类型,从而使列不能使用索引。
  2.3后面的条件顺序影响子旬后面的条件顺序对大数据量表的查询会产生直接的影响,如语句一:,=彩电.=.拌语句二:,.=.=彩电语句一先连接后做选择.执行时间需要152.5秒,而语句二先选择后做连接,执行时间需要7.5秒,所以在可以的情况下。先做选择后做连接。而不足先做连接后做选择。同样.可以最大程度过滤掉大数量记录的条件要写在句子的末尾。
  如需要查询库存量大于000的饮料产品,在实际数据中库存量大于1000的产品占到80%。而饮料产品占到产品总量的5%,所以应将饮料产品这一条件放在句子的末尾。2.4后面查询表顺序的影响在后面列表的顺序会对语句的执行性能产生影响,最后面的表将会最先被处理,在有多个查询表的情况下,应该选择记录条数最少的表作为基础表。
  如果有3个以上的表需要连接查询,则选择交叉表作为基础表。以避免由于表的顺序不对而产生的十分托服务器资源的数据交叉。3结束语|此扣『见.彳设计数据库时.最初的概念模型设计阶段要遵守第范式,在具体数据库物理设计阶段要根据数据库使用实际情况,适当降低范式要求,增加冗余,在数据库.作效率和空闸开销卜寻求最佳方案。
  而对于数据库查询语句的优化,要了解数据库的特征,根据数据的实际情况构造相应的.语句,重视不同语句的使用,使用顺序以及书写方式对执行效率的影响。通过深入了解数据库特征,采用合适的数据库物理设计方案,同时在应用程序开发时采取最佳的查询语句,从而使数据库在使用过程中性能大大提高。参考文献:11沈钧毅.数据库系统教程.北京:科学版社,2006.2黎孟雄.数据库优化技术的研究与实现.连云港师范高等专科学校学报,2004(3):86?88.3吴碌莉,刘仁辉,何冬黎.数据库优化设计方法初探.广西科学院学报,2005,2(2):118?121.2756-数据库与信息蕾?-本栏目责任编辑:代影数据库优化技术的分析与探讨作者:席洁作者单位:陕西国防工业职业技术学院,陕西,户县,7传奇游戏装备10300刊名:电脑知识与技术英文刊名:年,卷(期):2011,07(12)。

 
上一篇:浅析和用多媒体实现化学实验教学中的创新
下一篇:DVCAM编辑录像机的使用技巧和常见故障维修

推荐文章导读