MapReduce数据计算加速方法及系统技术方案

技术编号:25550475 阅读:30 留言:0更新日期:2020-09-08 18:49
本发明专利技术公开了一种MapReduce数据计算加速方法及系统。所述方法包括在Map端启动map任务;对输入数据进行map处理后输出键值对记录;调用partition函数,确定输出的键值对记录被分配到的reduce任务;将输出的键值对记录写入与被分配到的reduce任务对应的内存空间;所述方法还包括在Reduce端启动reduce任务;在map任务完成后,读取与reduce任务对应的内存空间内的键值对记录;对读取的键值对记录进行reduce处理后输出处理结果。本发明专利技术将Map处理结果保存在内存中,减少对磁盘的读写;简化了从Map输入到Reduce处理之间的中间处理流程,减少了计算过程。

【技术实现步骤摘要】
MapReduce数据计算加速方法及系统
本专利技术属于大数据领域,尤其涉及一种MapReduce数据计算加速方法及系统。
技术介绍
随着业务的发展,用户越来越多,随着技术的发展,各种各样的数据都能获取到,我们进入了大数据时代,经过多年的发展,大数据部门已经成为每个公司必备的基础部门,大数据平台每天要处理数百GB、数百PB甚至更多的数据,每天要运行几百万个数据处理任务,这需要极大的集群资源,现有的离线处理任务主要使用MapReduce(一种编程模型,用于大规模数据集的并行运算)来完成。MapReduce模型主要由三个阶段构成:Map、shuffle、Reduce。Map是映射,负责数据的过滤分法,将原始数据转化为键值对;Reduce是合并,将具有相同key值的value进行处理后再输出新的键值对作为最终结果。为了让Reduce可以并行处理Map的结果,必须对Map的输出进行一定的排序与分割,然后再交给对应的Reduce,而这个将Map输出进行进一步整理并交给Reduce的过程就是Shuffle。在Map端的Shuffle过程是对本文档来自技高网...

【技术保护点】
1.一种MapReduce数据计算加速方法,其特征在于,所述方法包括在Map端执行以下步骤:/n启动map任务;/n对输入数据进行map处理后输出键值对记录;/n调用partition函数,确定输出的键值对记录被分配到的reduce任务;/n将输出的键值对记录写入与被分配到的reduce任务对应的内存空间;/n所述方法还包括在Reduce端执行以下步骤:/n启动reduce任务;/n在map任务完成后,读取与reduce任务对应的内存空间内的键值对记录;/n对读取的键值对记录进行reduce处理后输出处理结果。/n

【技术特征摘要】
1.一种MapReduce数据计算加速方法,其特征在于,所述方法包括在Map端执行以下步骤:
启动map任务;
对输入数据进行map处理后输出键值对记录;
调用partition函数,确定输出的键值对记录被分配到的reduce任务;
将输出的键值对记录写入与被分配到的reduce任务对应的内存空间;
所述方法还包括在Reduce端执行以下步骤:
启动reduce任务;
在map任务完成后,读取与reduce任务对应的内存空间内的键值对记录;
对读取的键值对记录进行reduce处理后输出处理结果。


2.如权利要求1所述的MapReduce数据计算加速方法,其特征在于,通过内存数据库将输出的键值对记录写入与被分配到的reduce任务对应的内存空间;
通过所述内存数据库读取与reduce任务对应的内存空间内的键值对记录。


3.如权利要求2所述的MapReduce数据计算加速方法,其特征在于,所述内存数据库包括levelDB;
所述方法还包括:
初始化levelDB实例,所述levelDB实例与reduce任务相对应;
存储所述levelDB实例的连接信息;
通过内存数据库将输出的键值对记录写入与被分配到的reduce任务对应的内存空间,包括:
获取所述levelDB实例的连接信息;
将map任务连接到所述levelDB实例;
判断所述levelDB实例是否存在输出的键值对记录的key,若是,则调用所述levelDB实例的追加写api追加写,若否,则调用所述levelDB实例的新建键值对api新建key并插入输出的键值对记录;
关闭map任务与所述levelDB实例的连接;
通过所述内存数据库读取与reduce任务对应的内存空间内的键值对记录,包括:
通过所述levelDB实例的遍历api读取所述levelDB实例内的所有键值对记录;
所述方法还包括在对读取的键值对记录进行reduce处理后输出处理结果之后,销毁所述levelDB实例。


4.如权利要求3所述的MapReduce数据计算加速方法,其特征在于,所述levelDB实例的连接信息存储于Redis数据库中。


5.如权利要求1所述的MapReduce数据计算加速方法,其特征在于,与reduce任务对应的内存空间为Reduce端的本地内存空间或远端内存空间。


6.如权利要求1所述的MapReduce数据计算加速方法,其特征在于,一个map任务输出的键值对记录被写入一个或多个reduce任务对应的内存空间;
一个reduce任务对应的内存空间被写入一个或多个map任务输出的键值对记录。


7.一种MapR...

【专利技术属性】
技术研发人员:安金龙刘业辉张宁张飞王彦明
申请(专利权)人:北京京东尚科信息技术有限公司北京京东世纪贸易有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1