王茜
[摘 要]当今时代网络飞速发展,不管是商业还是个人对数据的存储与提取技术都提出了前所未有的高要求,传统的商业模式下的数据库技术已经不能完全满足信息管理和交换的要求。这就需要对数据库技术进行提升,对数据库进行多方位的优化,以提高信息传输效率,降低网络流量,避免数据库过载。
[关键词]数据库;优化;范式;索引;查询
doi:10.3969/j.issn.1673 - 0194.2016.24.098
[中图分类号]TP311.13 [文献标识码]A [文章编号]1673-0194(2016)24-0-01
数据库优化技术目前还在不断探讨和钻研之中,还远远未达到完全满足商业和个人需求的地步。数据库优化技术按照数据库管理的不同阶段分为范式优化、索引优化、查询优化3种优化,也是对各个不同阶段进行优化设计的具体方法。这3种不同的优化技术分别在逻辑设计阶段、物理设计阶段、查询阶段发挥各自不同的作用,共同作用于数据库优化。这可以看出,在数据处理和管理的各个阶段,程序员是否能够采取恰当的方法和手段对数据库进行设计与调整,对数据库优化技术能否得到有效提高产生至关重要的影响。
1 数据库优化的必要性
现代的生活节奏空前加快,对于生活生产所积累的数据需要储存下来,以备后来查询使用。数据库,就是一个数据存储的空间,把数据和资料按照一定的规律存储起来,查找或利用,对于社会生产生活和商业都大有裨益。
数据库发展到一定的程度,当前的存储技术已经不能很好地满足人们的需求,因此需要在各个方面对数据库进行优化设计,以提高数据库的运行能力,降低网络荷载,减少网络流量,增加可操作性和可行性。数据库的优化作为一门独特的科学技术也需要得到不断的发展,才能使用到更加宽广的领域,从更多的方面影响到人类的生活,给生产或是商业运行带来更大的便利。而且以往数据库技术落后,不能满足快速发展的商业化社会,需要得到及时的更新和优化。因此,数据库优化是现代数据领域不断向前发展的大趋势。
2 数据库优化技术
2.1 范式优化
在数据库的逻辑设计阶段,也就是通常所说的数据库开发阶段,利用范式对基本表进行规范化的操作,即范式优化。在范式优化中,主要的逻辑设计是要符合第三范式,消除函数依赖,避免传递依赖。第三范式有很多之前的设计阶段所采用的方式所没有的优点,其主要的优点就是消除大量备份数据给操作带来的负面影响。同时,没有从实质上改变数据库的形态,没有让数据库受到来自其他方面的负面影响,可以说是很全面的初始设计方法。在数据存储和备份中找到了一个十分恰当的平衡点,从开发阶段就克服了以往的优化缺陷,形成了一个较为完美的开始。
当然,范式优化也不是完全没有缺点的。在范式优化中,级别不断上升,许多操作中存在的不合理情况都已经消失,比如冗余和更新异常等,但是由于级别上升,上一级的关系模式不断循环往复的分解掉,那么关系模式的数目就越来越多,由此带来操作链接的繁杂。这就是一个异于常规的问题,操作链接繁杂后所带来的操作消耗就开始变得复杂,操作的可行性降低,数据库的压力增加,严重的可能还会影响数据库的正常工作。因此,范式优化是一个适可而止的过程,其与操作链接的合理分配就是一个优化的分界线,只有找到两者之间的平衡,才能既优化数据库,也带来操作的便捷性和实用性。
2.2 索引优化
索引优化在数据库的物理设计阶段发挥着重要作用。索引是查询的反面,是建立在查询基础上的深层次数据库内部优化技术,通过使用索引,可以提高上数据库的访问性能,是目前数据库优化中的主要对象。
在索引优化中要做到索引的全面性和进步性。所谓全面性是指在查询时的索引指针要指向全部的索引内容,不重不漏,对索引的每一个语句都单独分析,继而合并分析,做到索引的细化。所谓进步性,是指在索引中对于一些删除或添加的选项,也要一并加入到索引的指针范围,随着时间推移在查询内容上产生变化的部分在索引中也能做到准确无误的显示。
索引的优化还可以对数据库的结构产生优化作用,好的索引优化能够在属性或是属性之间的相互连接上对数据库的结构提出更高的要求,实现查询的顺畅、内容的可操作、数据库结构的合理设计。
2.3 查询优化
查询时数据库中最常发出的指令,在数据库的使用中最为常见。在某一个固定的查询方式上,一般其得出的语句结果多种多样。查询优化是查询阶段的优化技术,通过查询优化,能够在繁多的执行策略中选择最为合理和最为恰当的执行策略,提高查询的准确性和效率。
有时候在对全表查询和扫描的过程中会使数据库的使用效率非常低,因此在查询阶段对于查询优化技术的分析和研究就显得尤为重要。提高查询效率最主要的方法就是合理且适当地使用索引。索引和查询相辅相成,是数据库中一个整体的两个不可分割的面。
在查询优化过程中,许多的程序员只顾界面的精美和华丽,不顾查询效率,这导致很多开发出来的应用在查询时效率低下,资源过度浪费。因此,如何做好查询优化就成了当前程序员所要面临的主要问题。在查询过程的设计中,做到语句的合理高效简便是第一要务,此外还应注意到避免对大型表进行重复的排序,如果无法避免,应当对这种重复排序进行简化处理,这样在查询中,同一语句对应的查询结果就不会太过冗余,不会造成查询效率低下。
3 结 语
在数据库的设计阶段,严格按照第三范式的要求进行,但不可过于追求高级别的范式,要力求达到操作的可行性和实用性。在查询和索引阶段,根据不同的数据库的特点来进行查询和索引的优化,做到多重语句的书写和运用,避免对大型数据过多地重复排序,从数据库开发、设计、使用的各个阶段提升其性能,提高查询效率。
主要参考文献
[1]李韩,孙永杰.SQL数据库的安全管理和性能优化[J].科技创新与应用,2016(31).