【技术实现步骤摘要】
基于MapReduce的大数据处理方法及系统
[0001]本专利技术涉及一种基于MapReduce的大数据处理方法,属于计算机领域。
技术介绍
[0002]MapReduce是一种用于大规模数据集并行计算的编程模型,借助于函数式程序设计语言思想,用Map和Reduce两个函数编程实现并行计算任务,具有多种高效的实现方式。所有这些实现都向开发人员公开了应用程序编程接口(API),虽然具体语法在不同的API之间略有不同,但它们都需要理解已有代码功能并能重写Map和Reduce函数计算,以实现MapReduce框架的优化。对于不熟悉MapReduce程序的开发人员来说,亟需学习不同API并且在保证无误的条件下重写代码和算法重构,这无疑具有不小的难度。
[0003](1)现有的大数据处理框架(例如Hadoop,Spark),都是要求程序员首先了解其API,然后利用这些API编写MapReduce代码,这对于刚刚上手的程序员需要学习的时间很长,往往在工作时没有这么长的时间周期。
[0004](2)现有的大数据处理框架对 ...
【技术保护点】
【技术特征摘要】
1.一种基于MapReduce的大数据处理方法,其特征在于,包括:S1、输入java代码,将java代码分成java代码段;S2、按照java代码段的执行顺序,取出java代码段,判断取出的每个java代码段是否为迭代逻辑,所述java代码段若是迭代逻辑,将java代码段转换为MapReduce代码,利用全新API函数进行编译,得到执行结果,所述全新API函数为:主节点新建一个job控制模块,该job控制模块不断的启用map
‑
reduce过程来实现MapReduce代码的迭代逻辑,用户定义循环不变量,主节点申请缓存空间,用来存储用户定义的循环不变量及每次mapper和reducer的输入输出缓存,并建立索引,job控制模块进行多个map
‑
reduce过程中,根据索引从缓存空间中取出需要的数据;当迭代满足终止条件,结束迭代,获得MapReduce代码的执行结果,作为下一个代码段的输入;所述java代码段若不是迭代逻辑,将java代码段转换为MapReduce代码,利用已有大数据框架的API进行编译该MapReduce代码,获得的执行结果作为下一个代码段的输入。2.根据权利要求1所述的基于MapReduce的大数据处理方法及系统,其特征在于,将java代码段转换为MapReduce代码的方法,包括:将java代码段转换为中间代码,并将中间代码进行摘要,搜索与摘要相类似表述的API函数,利用API函数将摘要转换成MapReduce码。3.根据权利要求2所述的基于MapReduce的大数据处理方法及系统,其特征在于,将java代码段转换为MapReduce代码的方法,还包括:将Java代码段和转换的MapReduce码进行编译获得结果,如果结果相同,证明MapReduce代码转换成功,否则,更换API函数,重新将摘要转换成MapReduce码。4.根据权利要求1所述的基于MapReduce的大数据处理方法及系统,其特征在于,已有大数据框架包括Hadoop和Spark。5.根据权利要求1所述的基于MapReduce的大数据处理方法及系统,其特征在于,迭代终止条件为两次迭代结果相等,或者当前迭代次数达到最大迭代次数。6.根据权利要求1所述的基于MapReduce的大数据处理方法及系统,其特征在于,每个java代码段是从首代码开始到...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。