APP下载

探讨数据库物理结构优化技术

2017-04-15王天林

数字技术与应用 2016年12期
关键词:优化技术探讨数据库

王天林

摘要:随着大数据时代的到来,人们对数据的存储及查询提出更高要求,在海量的数据中迅速查询到所需内容,仅仅依靠SQL查询很难满足要求,应从数据库物理结构入手进行优化。本文对数据库物理结构优化要素进行分析,提出工作负荷压缩技术、成本估计与数据抽样技术、组合优化搜索算法等优化技术,以供参考。

关键词:数据库 物理结构 优化技术 探讨

中图分类号:TP301 文献标识码:A 文章编号:1007-9416(2016)12-0231-02

数据库物理结构优化旨在逻辑结构设计的基础上,提高数据库存储及访问的高效性,尤其在大数据时代背景下,为满足人们生产生活对数据查询质量及与效率的要求,加强对数据库物理结构优化的探讨具有重要的现实意义。

1 数据库物理结构优化要素

数据库物理结构优化要素包括索引、物化视图、无共享分区、多维群集等,其中索引是一种提高检索速度的数据组织,一定程度上可提高数据库检索性能。当前索引的优化由半自动优化、联机优化以及脱机优化之分,不同的优化手段对应不同种应用;物化视图是一种保存在基表上的数据库对象,服务于连接或聚集等操作耗时严重的行为,用于提高获得结果的效率;无共享分区是解决数据集复杂程度较高问题的一种策略,其借助独立的服务器集合协同工作在问题域上,要求每个服务器负责处理问题域的一个子集,而服务器之间的数据共享,主要通过高速网络互连实现;多维群集指使用多维立方体形式对数据表加以组织,依据多个维实现对数据的灵活群集。多维群集在大型数据库环境中应用广泛,其支持依据多个维或键实现对表的物理群集,并借助维的索引提供已群集数据的存取,使得CPU与I/O成本大大降低,促进检索性能的提升。

2 数据库物理结构优化技术

2.1 工作负荷压缩技术

数据库物理结构优化数学模型中,工作负荷是针对模型输入的技术,其质量优劣直接关系着推荐优化结果及性能质量。众所周知,人们使用数据库产生的SQL执行语句非常之多,使得工作负荷与优化推荐性能数量庞大,因此,需重点解决工作负荷规模和执行效率间的问题。一方面,工作负荷集压缩后应能完成未压缩工作负荷集的全部功能,而且还应保证前者的工作效率得以明显提升。

目前,基于距离工作负荷压缩方法和内嵌在优化顾问中的工作负荷压缩方法是较为流型的负荷压缩技术。其中前一种方法的实现建立对原工作负荷认真分析的基础上,使用基于距离的函数,寻找与判断和当前SQL语句相近的语句类别,保留原工作负荷中具有代表性的SQL语句,将其他相似冗余的语句删除,即,将那些语法相近而参数不同的语句加以合并。后一种方法只有具有较大工作负荷时,工作负荷压缩模块才会被优化顾问调用。在该种方法中,原始工作负荷被压缩后,使得负载代价高的语句加以保留,而其他语句被忽略。此种方法较为简单,使得工作负荷数量明显减少,但当遇到语句成本倾斜时往往引发严重不良后果。尽管后来人们对其进行优化,当仍存在一定局限性。

工作负荷压缩技术使得优化推荐复杂度得以较好的解决,不过考虑到一些压缩算法存在的弊端,如压缩效率低、压缩质量差,因此,实际应用中应具体问题具体分析,结合相关需求选择合适的算法。

2.2 成本估计与数据抽样技术

成本估计是数据库物理结构优化工具的核心所在,一定程度上决定着优化质量。人们使用查询优化器实现索引的自动选择,并借助统计数据构建评估模型,使得推荐优化质量得以明显提高。其中统计数据在优化实现中发挥重要作用,而伴随着数据量的不断增加,为更好的解决统计数据效率与质量问题,人们开始使用数据抽样技术。成本估计与数据抽样技术优化数据库物理结构的实现基于工作负荷执行状况的评估。

面对庞大的数据量,为促使推荐优化成本的降低,人们利用原始数据库统计信息提取、数据抽样技术两种方法获取统计数据。当对数据集的统计精度要求不是很高时,使用数据抽样方法效率非常高。其中应用于数据库领域的抽样技术有随机抽样、伯努利抽样、系统抽样与分层抽样。其中随机抽样中因其随机性使得总体中任何个体具有相等的抽中概率,彼此之间没有任何关系、完全独立,但其要求总体个数可知且有限,而且针对水平分区的数据表并行处理抽样操作的难度较大;伯努利抽样中因具有较小的抽样粒度,会获得对数据特性不依赖且有效的随机抽样,不过其针对行级别的抽样操作,降低了抽样性能,通常为获得抽样性能,可将其和索引配合使用;系统抽样在数据库领域的应用,抽样操作针对存储页面级别,尽管使得抽样性能得以显著提高,不过针对明显群集的数据效果会大大降低;分层抽样实现对事先掌握信息的利用,对总体结构与样本结构的一致性加以充分考虑,提高了样本的代表性。

实际上无论采用何种抽样技术得到的结果均是原始数据的近似统计,考虑到磁盘上数据的分布并不是均匀的,得到的统计数据与数据的实际情况存在偏斜,进而影响统计结果和真实结果间的偏差大小,因此,实际应用中选择合适的抽样技术尤为关键。

3 组合优化搜索算法

推荐优化过程中需考虑组合优化问题,这就需要应用专门的搜索算法,以提高物理配置的合理性,实现对物理结构的优化。其中遗传算法、模拟退火算法、禁忌搜索算法是解决组合优化问题的常用算法。

3.1 遗传算法

遗传算法是对达尔文生物进化论中生物进化的模拟,尽管该算法运算是随机的,但并非是一个简单的随机过程,其以遗传信息作参考,实现对新领域的探测和搜索,从而获得更好的解决方案。遗传算法基本运算过程这里不再赘述,不过在优化數据库物理结构方面的应用具有以下优点:可进行扩展,方便结合其他算法;覆盖范围大,利于全局选优;搜索开始于群体,依托概率机制,具有随机性。但其编程难度较大,需经历先编码、寻找最优解、解码过程,期间涉及较多参数,给解的品质造成不良影响,当前来看,参数的选取主要依靠经验获得,并且如选择的适应度函数不合理,会导致其在局部最优处收敛,无法得到全局最优。

3.2 模拟退火算法

退火算法的提出基于组合优化问题和物理固体物质退火过程较为相近。其中组合优化问题解空间中各点表示不同的解,对应不同的成本函数值,优化即是寻找成本函数值最小或最大的解。退火算法的实现分为四个重要环节:从一个产生函数的当前解中产生处于解空间中的新解;计算和新解性对应的目标函数差;对新解能否被接受加以判断;如接受新解,则替换掉当前解;当新解未被接受时则依据当前解继续进行实验。

模拟退火算法的优点不仅体现在具有并行性,而且体现在具有渐进收敛性上,同时,模拟退火算法得到的解不受初始解状态影响。模拟退火算法不仅在组合优化问题上应用广泛,而且在多目标优化环境中也较为适用,不过该算法的实现对计算需求要求较高,因此,可使用并行化提高计算速度。

3.3 禁忌搜索算法

禁忌搜索算法出发于一个初始可行解,并依据特定搜索方向进行试探,选择实现使特定的目标函数变化最多的移动,为防止最优解产生于局部,禁忌搜索算法借助记忆技术,选择与记录已经完成的优化过程,并给接下的搜索方向提供指导。另外,该算法引入相关的禁忌准则与存储结构,防止搜索迂回,并依据藐视准则对被禁忌的优良状态进行赦免,确保有效搜索的多样化,达到优化全局的目标。

禁忌搜索算法的实现主要依照以下三个過程,过程一:从随机配置状态下启动,要求计算出准则函数的值;过程二:依据当前候选集中的活动进行操作,当发现禁忌表中没有最优的,就将该活动作为下一个当前配置,并将其加入到禁忌表中,反之,确定具有最优效果且未在禁忌列表中的活动当做下个当前配置,确保该过程进行一定次数的重复;过程三:大当过程二结束便可获得最优的解决方案。

通过分析不难发现,禁忌搜索具有以下特点:该算法可接受搜索过程中劣解,适应能力较强;新解是非禁忌的最优解或是较当前最优解的解,具有相对较高的获得最优解概率。为提高该算法的搜索效率,应防止搜索迂回情况的出现,并且可以接受满足藐视准则或领域中非禁忌的劣解。

4 结语

大数据时代的到来引发了人们对数据库物理结构优化技术的关注。众所周知,优化技术的研究是一个复杂的过程涉及多学科内容,因此,需要结合把握数据库未来发展趋势的基础上,综合运用多种理论知识,寻找最佳的优化技术。本文通过对数据库物理结构优化技术的探讨得出以下结论:

(1)数据库物理结构优化包括索引、物化视图、无共享分区以及多维群集,通过对其优化可提高对数据库数据的查询效率,使得数据库物理结构得到一定程度的优化。

(2)当前数据库物理结构优化技术主要包括工作负荷压缩技术、成本估计与数据抽样技术,同时,还需要借助一定的组合优化搜索算法支撑,其中遗传算法、模拟退火算法、禁忌算法常被应用在物理结构优化技术中。另外,这些组合优化算法有着各自的优点与缺点,实际应用中应结合具体的业务特点以及对各种因素综合评估的基础上选择合适的算法,以获得预期的优化结果。

参考文献

[1]张学栋,胡伟强.数据库物理结构优化技术分析[J].通讯世界,2015,15:244-245.

[2]杨晨.数据库物理设计及其优化技术研究[J].电子世界,2013,19:178-179.

[3]刘文静.数据库结构优化技术分析[J].电脑编程技巧与维护,2015,10:77+100.

[4]崔跃生,张勇,曾春,冯建华,邢春晓.数据库物理结构优化技术[J].软件学报,2013,04:761-780.

猜你喜欢

优化技术探讨数据库
结构设计优化技术在房建结构设计中的运用分析
燃煤机组运行监测及优化技术的现状分析
刍议小学足球教学的训练教学方法