[发明专利]并行数据库中算子复用的实现方法有效
申请号: | 201110259524.9 | 申请日: | 2011-09-05 |
公开(公告)号: | CN102323946A | 公开(公告)日: | 2012-01-18 |
发明(设计)人: | 李阳;何清法;顾云苏;冯柯;蒋志勇;徐岩;饶路;李晓鹏;刘荣;赵婧 | 申请(专利权)人: | 天津神舟通用数据技术有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 300384 天津市华苑产业区*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 一种并行数据库中算子复用的实现方法,包括如下步骤:步骤1、使用普通的查询规划方法为查询生成串行的查询计划,所述查询计划是一个二叉树结构;步骤2、自顶向下扫描执行所述查询计划,寻找可复用的物化类算子,并更改查询计划结构,将线程级物化算子改为全局复用的物化算子;步骤3、对步骤2生成的更改后的查询计划进行并行化处理,生成用于多个线程并行执行的计划森林;步骤4、对步骤3生成的计划森林进行全局复用算子合并处理,生成用于可供多个线程并行执行且可复用物化算子的有向图计划;步骤5、各个线程并行执行所述有向图中的各自的计划部分,第一个执行到全局复用算子的线程称之为主线程,由主线程锁住该全局复用算子并真正执行该算子及其以下的计划,其他线程等待;步骤6、所述主线程执行完该算子之后解锁,其他线程开始从该全局复用算子中读取数据并继续各自的计划树;步骤7、所述主线程等待所有的计划都读取完毕全局复用算子的数据之后释放该算子物化的数据。 | ||
搜索关键词: | 并行 数据库 算子 实现 方法 | ||
【主权项】:
一种并行数据库中算子复用的实现方法,包括如下步骤:步骤1、使用普通的查询规划方法,为查询生成串行的查询计划,所述查询计划是一个二叉树结构;步骤2、自顶向下扫描执行所述查询计划,寻找可复用的物化类算子,并更改查询计划结构,将线程级物化算子改为全局复用的物化算子;步骤3、对步骤2生成的更改后的查询计划进行并行化处理,生成用于多个线程并行执行的计划森林;步骤4、对步骤3生成的计划森林进行全局复用算子合并处理,生成用于可供多个线程并行执行且可复用物化算子的有向图计划;步骤5、各个线程并行执行所述有向图中的各自的计划部分,第一个执行到全局复用算子的线程称之为主线程,由主线程锁住该全局复用算子并真正执行该算子及其以下的计划,其他线程等待;步骤6、所述主线程执行完该算子之后解锁,其他线程开始从该全局复用算子中读取数据并继续各自的计划树;步骤7、所述主线程等待所有的计划都读取完毕全局复用算子的数据之后释放该算子物化的数据。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津神舟通用数据技术有限公司,未经天津神舟通用数据技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201110259524.9/,转载请声明来源钻瓜专利网。