[发明专利]一种数据库查询中最优执行计划的搜索方法无效
申请号: | 201110060504.9 | 申请日: | 2011-03-14 |
公开(公告)号: | CN102081678A | 公开(公告)日: | 2011-06-01 |
发明(设计)人: | 王非;黄本雄;余国锐;邓磊 | 申请(专利权)人: | 华中科技大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京市德权律师事务所 11302 | 代理人: | 周发军 |
地址: | 430074 湖北*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据库 查询 最优 执行 计划 搜索 方法 | ||
1.一种数据库查询中最优执行计划的搜索方法,其特征在于,所述方法包括在执行计划的搜索过程中不予考虑含有笛卡尔积连接操作的执行计划,除非用户提交的查询语句中含有笛卡尔积连接操作,同时将语句中的关系表的连接关系以一个图的形式表示,最后在图中搜索最优执行计划;所述以图的形式表示语句的连接关系如下:图中的点表示查询语句中的关系,如果图中某两个点所对应的关系有连接操作,该连接操作包括内连接和外连接,则连接这两点,边的权值为两关系连接操作的执行代价;
所述在图中搜索最优执行计划的方案包含如下一些步骤:
步骤一:从图中任一点出发,在图中找出一条以该点为起始点的连接通路,该连接通路对应原查询语句的一个执行计划,同时使得该执行计划为从该点出发所对应的代价最小的执行计划;
步骤二:依次从图中其它各点出发,同样得出以这些点为起始点的连接通路,使得该连接通路所对应的执行计划的代价最小;
步骤三:比较前两步得出的所有连接通路所对应的执行计划的代价,得出代价最小的连接通路;
步骤四:得出代价最小的连接通路后,采用本发明自定义的动态分配方案将该通路中各个操作分配到各线程执行。
2.根据权利要求1所述的一种数据库查询中最优执行计划的搜索方法,其特征在于,所述步骤一从图中某一点为起始点搜索代价最小的连接通路包括以下一些步骤:
a、计算图中与该点相关的所有边的权值;
b、设定连接通路的第一条边;
c、用新的点替换第一条边,重新计算与该点相关的边的权值;
d、设定连接通路的第二条边;
e、依次下去直到遍历完图中所有的点。
3.根据权利要求2所述的一种数据库查询中最优执行计划的搜索方法,其特征在于,所述计算边的权值即计算边所对应的连接操作的执行时间,具体方案如下:
若通过关系表的索引信息访问该关系表中一条记录的平均时间为通过嵌套循环访问关系表中一条记录的平均时间为对关系表建立临时索引时每个元组消耗的平均时间为对于某一连接操作关系R1和R2的元组个数分别为N1,N2;
如果R1上建有相应的索引且R2上没有建立索引,则该操作的时间开销为
如果R2上建有相应索引且R1上没有建立相关索引,则该操作的时间开销为
如果R1和R2上均建有相关索引,则该操作的时间开销为
如果R1和R2上都没有相关索引,在对R1和R2都没有进行预处理的情况下执行时间为现在通过建立临时索引的方式执行上述操作,若对R1建立临时索引,则执行时间为若对R2建立临时索引,则执行时间为故在关系表R1和R2都没有索引的情况下的执行时间代价为
4.根据权利要求1或2所述的一种数据库查询中最优执行计划的搜索方法,其特征在于,所述步骤四将通路中各个操作动态分配到线程中并发执行的步骤如下:
假设最优执行计划所对应的连接通路中有n个操作,有m个线程并行执行;
a)将连接通路中前m个操作分别在m个线程中执行,并记录m个线程中执行时间最短的线程;
b)将连接通路中下一个操作直接投放到执行时间最短的线程,并重新更新线程池中执行时间最短的线程;
c)如果连接通路中还有操作未执行则执行步骤二。
5.根据权利要求3所述的一种数据库查询中最优执行计划的搜索方法,其特征在于,所述步骤四将通路中各个操作动态分配到线程中并发执行的步骤如下:
假设最优执行计划所对应的连接通路中有n个操作,有m个线程并行执行;
a)将连接通路中前m个操作分别在m个线程中执行,并记录m个线程中执行时间最短的线程;
b)将连接通路中下一个操作直接投放到执行时间最短的线程,并重新更新线程池中执行时间最短的线程;
c)如果连接通路中还有操作未执行则执行步骤二。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华中科技大学,未经华中科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110060504.9/1.html,转载请声明来源钻瓜专利网。
- 上一篇:合成氯丁二烯流程中吸收剂回收装置
- 下一篇:按压式U盘笔