[发明专利]一种基于SQL的MapReduce作业生成方法及系统有效

专利信息
申请号: 201310729051.3 申请日: 2013-12-25
公开(公告)号: CN103761080B 公开(公告)日: 2017-02-15
发明(设计)人: 李林;韩洪林;曹津;赵明明;叶思菁;朱德海;张晓东;姚晓闯 申请(专利权)人: 中国农业大学
主分类号: G06F9/44 分类号: G06F9/44;G06F17/30
代理公司: 北京路浩知识产权代理有限公司11002 代理人: 李迪
地址: 100193 *** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明涉及一种基于SQL的MapReduce作业生成方法及系统,该方法包括,解析接收到的SQL语句,生成抽象语法树;转化所述抽象语法树为查询计划树;优化所述查询计划树;根据优化后的查询计划树生成对应的MapReduce作业,该系统基于Antlr工具对SQL语句生成抽象语法树AST,并进一步基于AST生成一种查询计划树结构,最终在查询计划树的基础上生成MapReduce作业,同时还提供了相应的优化策略,以确保生成的MapReduce作业拥有更高的执行效率。
搜索关键词: 一种 基于 sql mapreduce 作业 生成 方法 系统
【主权项】:
一种基于SQL的MapReduce作业生成方法,其特征在于,包括:解析接收到的SQL语句,生成抽象语法树;转化所述抽象语法树为查询计划树;优化所述查询计划树;根据优化后的查询计划树生成对应的MapReduce作业;所述转化所述抽象语法树为查询计划树,具体包括:获取所述抽象语法树;转化所述抽象语法树为由抽象类节点组成的中间树;根据所述中间树生成对应的查询计划树;所述根据优化后的查询计划树的每个节点,分别生成对应的MapReduce作业,具体包括:生成Map作业;生成Reduce作业;所述生成Map作业,包括:源数据的筛选:对于输入的数据,根据TableNode中列信息,筛选出指定的数据列对应的数据,其中,所述TableNode为组成所述中间树的节点中的数据表节点;数据的过滤:根据WhereNode中的where中的相关信息,对输入的数据进行过滤,其中,所述WhereNode为组成所述中间树的节点中的筛选表节点;数据的输出:将过滤后的数据输出;所述生成Reduce作业,包括:数据的聚合:根据TableNode中存储的针对列的聚合信息,对列进行聚合;数据的筛选:根据Having后面的限定条件,对聚合后的数据进行再次过滤;数据的连接Join:将两张表具有Join关系的表,根据Where子句中指定的关联项,关联起来,合成一张表,将这张表作为临时表,与接下来的表继续进行Join操作;结果的输出:以NULL为Key,将Join后的数据作为Value输出到指定的位置。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国农业大学,未经中国农业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201310729051.3/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top