[发明专利]基于谓词规约和代价估算的局部多查询优化方法有效
申请号: | 201610833428.3 | 申请日: | 2016-09-20 |
公开(公告)号: | CN106446134B | 公开(公告)日: | 2019-07-09 |
发明(设计)人: | 陈岭;杨谊 | 申请(专利权)人: | 浙江大学 |
主分类号: | G06F16/2453 | 分类号: | G06F16/2453 |
代理公司: | 杭州天勤知识产权代理有限公司 33224 | 代理人: | 胡红娟 |
地址: | 310027 浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开一种基于谓词规约和代价估算的局部多查询优化方法,属于大数据查询优化领域,本发明方法为:首先利用数据查询系统已有的优化器对查询集合中的查询分别进行优化,并以查询树的形式表示,得到优化后的查询树集合;然后结合局部多查询优化方法,通过多次迭代,对查询之间相同或相近的子任务进行等价或规约处理,生成全局多查询计划树;最后结合生成的全局多查询计划和子任务之间的规约关系,根据代价模型估算中间结果重用开销,判断直接执行子任务还是重用中间结果,对全局多查询计划进行优化。本发明充分考虑中间结果利用和查询并发之间的平衡,减少重复操作,有效提升查询性能。 | ||
搜索关键词: | 基于 谓词 规约 代价 估算 局部 查询 优化 方法 | ||
【主权项】:
1.一种基于谓词规约和代价估算的局部多查询优化方法,其特征在于:分为预处理、局部多查询优化处理和多查询计划优化三个阶段,具体步骤如下:(1)预处理阶段:步骤(1‑1),利用数据查询系统已有的查询优化器,对查询集合中的每条查询进行优化,分别找到最优的查询计划,并以查询计划树的形式表示,得到查询计划树集合;步骤(1‑2),重新定义查询计划树中的节点编号;步骤(1‑3),定义节点映射关系map<Node key,Node value>M,并将M初始化为空;步骤(1‑4),将所有的查询计划树中的节点添加至全局多查询计划树中,并在全局多查询计划树中添加“超根节点”,其中,“超根节点”指向查询计划树集合中各个查询的根节点;(2)局部多查询优化处理阶段:步骤(2‑1),遍历查询全局多查询计划树中的节点集合V={v1,v2,...,vn},若集合V中存在与当前节点等价的节点,选择节点集合V中等价查询节点中编号最小的节点vj*,进行合并操作,用vj*代替所有vi∈V‑{vj*};步骤(2‑2),对于每个节点vi,找到符合“最强归约条件”的子任务taskj*,在M中添加vj*到vi的映射,通过有向线段连接vj*→vi,并改变vj*的操作描述,以节点vi所对应的子任务taski的结果作为子任务taskj*的输入,其中,对于每个子任务taski,如果taski的执行结果包含了其他子任务的结果,则认为其他子任务可以被规约到taski,能够被规约到taski的所有子任务中,结果与taski最相近的子任务被称为符合“最强归约条件”的子任务taskj*;步骤(2‑3),重复步骤(2‑1)和步骤(2‑2),对全局多查询计划树中的节点进行等价替换和规约替换,直到无法进一步简化全局多查询计划树为止;(3)多查询计划优化阶段:步骤(3‑1),获取局部多查询优化处理阶段得到的映射关系和全局多查询计划树;步骤(3‑2),根据映射关系map<Node key,Node value>M,遍历全局多查询计划树中的节点,若遍历完成,则执行步骤(3‑8);步骤(3‑3),根据不同任务对应的代价模型,估算直接开销和重用开销,其中,所述直接开销为全局多查询计划树中的节点直接执行对应任务的CPU计算开销,所述重用开销为依赖节点对应任务的CPU计算开销以及对所依赖节点对应任务产生的结果进行网络传输和计算的开销;步骤(3‑4),对比重用开销和直接开销,若重用开销大于直接开销,则执行步骤(3‑5);若重用开销小于直接开销,则执行步骤(3‑6);步骤(3‑5),将映射关系中节点对应的关系映射为自己,不利用中间结果直接执行节点对应的任务,然后执行步骤(3‑7);步骤(3‑6),重复步骤(3‑3)和步骤(3‑4),判断是否存在重用开销更低的节点,若存在则更新映射关系,将该节点映射到重用开销更低的节点;步骤(3‑7),重复步骤(3‑2);步骤(3‑8),返回全局多查询计划树。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学,未经浙江大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610833428.3/,转载请声明来源钻瓜专利网。
- 上一篇:同时对接两个数据库的方法及装置
- 下一篇:一种多媒体数据标签生成方法和装置