[发明专利]一种基于MapReduce模型的提升表连接效率的方法在审
申请号: | 201711492129.9 | 申请日: | 2017-12-30 |
公开(公告)号: | CN108170535A | 公开(公告)日: | 2018-06-15 |
发明(设计)人: | 杨胜齐;黄樟钦;肖晟晨;王术川;包宇津 | 申请(专利权)人: | 北京工业大学 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F9/54;G06F9/48 |
代理公司: | 北京思海天达知识产权代理有限公司 11203 | 代理人: | 沈波 |
地址: | 100124 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 共享信息 表连接 机群 计算机应用领域 信息分发模块 信息共享机制 信息压缩模块 任务调度器 分片数据 数据传输 无效信息 整体算法 中间结果 并行性 大数据 连接表 空档 转型 并发 过滤 存储 网络 瓶颈 传输 压缩 共享 协调 | ||
本发明公开了一种基于MapReduce模型的提升表连接效率的方法,属于计算机应用领域,本方法设计了信息共享机制对表的信息进行压缩共享,通过共享信息对连接表中无效信息进行过滤,提升中间结果在网络中传输的效率,打破大数据在本地存储时,分片数据信息不全面的瓶颈,从而达到提高整体算法效率的目的。所述共享信息机制,包含三个功能模块,分别为信息分发模块、信息压缩模块和信息转型模块。本方法减少了网络上的数据传输,通过利用任务调度器,协调多个任务并发,合理的利用不同表之间利用Map机群和Reudce机群运行时间上的空档,提前执行MapReduce任务,增强了系统的并行性。
技术领域
本发明属于计算机应用领域,涉及Hadoop平台中的MapReduce框架,涉及MapReduce 框架中关于大数据表连接任务的执行算法,具体涉及两表和多表两种情况下的数据表连接执 行方法。
背景技术
近几年,随着人民生活水平的提高,互联网越来越普及,微博、微信等与互联网相关应用的用户越来越多,并且物联网、智慧城市等技术的蓬勃发展,由此产生的数据正在飞速的增长着,大数据时代已经全面来临。根据相关机构的预测,2020年的全球数据总量将会达到40ZB。根据社交网络公司Facebook的统计,该社交平台每天会产生500TB的数据,而 阿里巴巴的一个事业部现在就已经存储了100PB的数据。为了能够高效且低成本的分析和挖掘庞大数据潜在的价值,很多公司选择将数据存放到成本低、容错率高的分布式计算集群中 分析处理。
在2004年谷歌公司提出了MapReduce计算模型和GFS[26]分布式文件系统。这套数据存储与处理系统,它的水平扩展性优良,因此可以兼容很多廉价的硬件设备,并且容错性能好,大大降低了因为个别节点任务失败而导致整个任务失败的概率,其中MapReduce编程模型通过向编程人员提供Map函数接口和Reduce函数接口这种方式,对使用者隐藏了底层的并行控制操作,极大的方便了编程人员的开发过程,缩短了开发周期[27]。正是因为上述的这些优点,以MapReduce为并行编程模型的数据处理系统逐渐成为了处理大数据的主流系 统。在这一章中,首先对即将要用到的Hadoop平台中的MapReduce和HDFS这两个核心模块进行概述,之后针对已有的一些关于MapReduce框架的连接进行了分析与描述,并对基于Reudce端的两表连接和单次任务完成的多表连接在执行过程中存在的不足进行了分析。
查询是数据处理的基本操作,而连接在查询操作中使用频率是最高的,因此数据表 的连接操作将会是MapReduce框架中的研究热点。然而MapReduce框架分布式的计算特点, 使其在处理连接操作时有诸多局限性,在多表连接的情况下效率更是低下。
对于两表连接而言,在MapReduce模型中原本使用的是Reduce Side Join算法,虽然RSJ算法确实是要比传统的数据库技术在执行效率方面提高不少。但是就RSJ算法的执行过程而言,仍然有着很大的改进空间。虽然在Map阶段,主节点对于任务的分发充分考虑了数据移动不如算法移动的原则,尽量将Map任务分配到数据所在节点,避免不必要的网络传输。但是,数据在Reduce阶段却不得不进行网络传输,由于数据表的连接就是将连接键相同的元组合并输出,而当初录入的数据并不能保证每个数据分片的连接键都是相同的,因此在 混洗分区的时候不可避免的需要进行网络传输才能使连接键相同的元组被分入同一个Reduce 节点。
除了不可避免的网络传输,数据表中的数据也存在着“冗余”的情况,也就是说并不是每一条元组都有来自另一张表key值相同的元组与之连接,也就不会出现在最后的结果 当中,但是这样的元组同样需要进行网络传输。在示例中,满足连接条件的元组,即来自不 同文件且连接键(Cu_id值)相同的元组。只有Cus_id为1和2的元组,同时出现在了两个表中,因此连接操作只是针对这些元组进行。id为3的元组并不满足此次的连接任务需求,虽然同样经过了网络传输等步骤,但是仍然是一组“无用”的数据。在示例中冗余的元组仅仅只有一条,但是在实际的情况下,在海量数据中这样的数据占着很大的比例,他们会占用大量I/O和网络带宽资源,降低了算法的效率。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京工业大学,未经北京工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711492129.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种提高应用程序执行效率的方法及装置
- 下一篇:WEB程序的拓展方法和装置