[发明专利]一种基于超图和动态规划的大数据实时查询优化方法有效
申请号: | 201310716665.8 | 申请日: | 2013-12-16 |
公开(公告)号: | CN103793467B | 公开(公告)日: | 2017-01-25 |
发明(设计)人: | 陈岭;周强;吴勇;阎孝文 | 申请(专利权)人: | 浙江鸿程计算机系统有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 310053 浙江省杭州市滨江区浦*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 超图 动态 规划 数据 实时 查询 优化 方法 | ||
技术领域
本发明涉及大数据实时查询技术领域,尤其涉及一种基于超图和动态计划的大数据实时查询优化方法。
背景技术
大数据实时查询是重要的大数据技术,现有的大数据查询系统有Google Dremel、Cloudera Impala、Berkeley Shark、Apache Drill等。大数据实时查询一般采用分布式计算架构,由于弱化了对事务等功能的支持,所以相对于关系型数据库集群具有更高的可扩展性。同时由于大数据实时查询能很好的满足实时查询的用户需求,因此其在互联网、智慧城市等领域有广阔的应用空间。
查询优化是数据库管理系统的重要组成部分,查询优化方法一般由代价模型和优化方法两部分组成。一般的代价模型需要考虑I/O、数据传输代价及具体连接算法运行特性等因素,但实际的查询优化中为了简化模型的构建通常只是考虑单个因素,现有的代价模型如对Hive查询性能进行优化工作时采用的基于连接结果和最小化的代价模型,其能够很好的应用于Hive数据仓库并一定程度的优化其查询效率。但是其只考虑连接中间结果读写产生的I/O代价这一因素,因此存在很大的系统局限性,这样便很难保证产生高效的执行计划,从而影响查询的实时响应能力。
现有的优化方法可以分为两类:一类是获得最优查询计划的方法;如基于记忆的优化方法及基于动态计划的优化方法。基于记忆的优化方法,其工作原理是以一种自顶向下的方式生成计划,如自顶向下分区搜索方法,该方法的核心是利用最小割集以一种自顶向下的形式生成连通子图,由于在枚举过程中结合了一些搜索策略如分支限界进行剪枝,故其算法的执行效率有很大程度的提升。但是其只能处理简单的二值连接谓词及内连接,而不能处理外连接以及反连接。基于动态计划的优化方法,由于能够有效的处理复杂的连接谓词,所以能解决自顶向下优化方法存在的问题,但是一般动态计划方法存在搜索空间会随着关系数的增加而指数增长的问题。
另一类是获得次优查询计划的方法,如基于遗传算法的优化方法。基于遗传算法的方法,其工作原理是从一组随机产生的种群开始搜索,种群中的每个个体都是问题的一个解,其根据适应值的大小选择部分后代同时淘汰部分后代,算法不断迭代直到收敛,该方法虽然较高效,但找到的解一般是次优解,同时存在过早收敛等问题。
发明内容
本发明为克服上述的不足之处,目的在于提供一种基于超图和动态计划的大数据实时查询优化方法,通过采用基于最佳代价的连接顺序优化方法来提升查询效率,在大数据环境下满足用户的实时查询需求。
本发明是通过以下技术方案达到上述目的:
1、一种基于超图和动态计划的大数据实时查询优化方法,包括最佳代价模型构建过程和执行计划空间搜索过程,最佳代价模型构建两过程包括以下步骤:
1)分析元数据服务器中表数据,构建生成细粒度的列级统计信息直方图,并将其存储在元数据服务器中;
2)利用统计信息,构建相应最佳的代价模型供生成计划时使用。
执行计划空间搜索过程包括以下步骤:
1)解析数据库查询语句,将结果保存于查询超图G=(V,E)数据结构中,查询超图G=(V,E)满足两个条件:第一,V是一个非空的顶点集,即所有参与连接的关系的集合;第二,E是一组超边集合,即代表关系间连接操作的集合,其中超边是一个无序对(u,v),u和v是属于顶点集V的非空子集,并且
2)为单个关系初始化设置执行计划,将其保存在相应动态计划表中,其它元素值全部置为
3)定义好计算枚举策略:每个连通子图及连通补集对只被生成一次;
4)通过计算领域以枚举连通子图;
5)为每个连通子图找到合适的连通补集;
6)为每对连通子图和连通补集构成的执行计划计算其代价,依照代价模型更新其相应执行计划;
7)重复执行步骤4)——步骤7),直到整个左线性树构成的执行计划空间搜索完毕,生成执行计划树。
本发明的有益效果在于:
1)针对执行计划搜索空间过大的问题,构建满足左线性树的搜索策略,大大降低了搜索的空间,提升了基于超图和动态计划算法运行的效率;
2)构建满足大数据环境的最佳代价模型,综合考虑了大数据环境下传输代价及哈希连接算法运行特性等因素,确保了优化方法生成的计划是最佳的。
附图说明
图1:基于超图和动态计划的大数据实时查询优化方法查询优化总体流程图;
图2:连通子图枚举流程图;
图3:执行计划生成流程图。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江鸿程计算机系统有限公司,未经浙江鸿程计算机系统有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310716665.8/2.html,转载请声明来源钻瓜专利网。