深入理解与应用Hadoop中的MapReduce

现在大数据是越来越火了,而我自己研究这方面也很长时间了,今天就根据我自己的经验教会大家玩转MapReduce,下文中将MapReduce简写为MR。 本篇博客将结合实际案例来具体说明MR的每一个知识点。1、本篇博客核心内容:2、MR的基本概念3、MR中map()函数和reduce()函数如何编写4、MR程序的基本编写流程(MR的基本执行过程) 下面将用一个具体的电信业务说明MR最基本的编写...
阅读(3745) 评论(1)

Job作业提交源码分析

Job作业提交源码分析:...
阅读(359) 评论(0)

MapReduce程序开发中的context

简要截取: 具体详解: 本篇博客以经典的wordcount程序为例来说明context的用法: 直接上代码:package MapReduce;import java.io.IOException;import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.FSDataInputStream; impor...
阅读(3101) 评论(0)

基于Yarn平台的MapReduce运行机制

基于Yarn平台的MapReduce运行机制如下图所示: 详细步骤: 1>用户向yarn平台提交应用程序 2>yarn平台的ResourceManager接收到我们客户端提交给的MapReduce程序后,把程序交给某个NodeManager节点,随后在这个NodeManager节点上启动一个进程— MRAppMaster 3>MRAppMaster首先向ResourceManager注册...
阅读(581) 评论(0)

结合手机上网流量业务来说明Hadoop中的二次排序机制,分区机制

本篇博客将结合手机上网流量业务来详细介绍Hadoop的二次排序机制、分区机制,先介绍一下业务场景: 先介绍一下业务场景:统计每个用户的上行流量和,下行流量和,以及总流量和。 本次描述所用数据: 日志格式描述: 日志flowdata.txt中的具体数据: 首先我们先通过mapreduce程序实现上面的业务逻辑: 代码实现:package FlowSum;import jav...
阅读(1799) 评论(0)

结合手机上网流量业务来说明Hadoop中的自定义数据类型(序列化、反序列化机制)

大家都知道,Hadoop中为Key的数据类型必须实现WritableComparable接口,而Value的数据类型只需要实现Writable接口即可;能做Key的一定可以做Value,能做Value的未必能做Key.但是具体应该怎么应用呢?—-本篇文章将结合手机上网流量业务进行分析。 先介绍一下业务场景:统计每个用户的上行流量和,下行流量和,以及总流量和。 本次描述所用数据: 日志格式描述:...
阅读(1661) 评论(0)

MapReduce常见算法

2016年4月6日18:28:29 MapReduce常见算法 作者:数据分析玩家        对于MapReduce,常见的算法有单词计数、数据去重、排序、TopK、选择、投影、分组、多表链接、单表关联。本文将具体阐述两个算法:数据去重与TopK。        为了让大家看的更清楚,现在将所用数据grade.txt数据列出: HeBei 568 HeBei 313 HeBei 60...
阅读(554) 评论(0)

MapReduce程序运行流程

2016年4月6日10:34:10 MapReduce程序运行流程 作者:数据分析玩家        一直以来虽然都在学习hadoop,也打算写一篇关于MapReduce程序运行流程的博客文章,但是一直没有时间,今天抽空写一篇,本篇文章尽量写的详细,如有问题请读者留言。         为了方便理解,先用作图的方式进行阐述:          MapReduce程序的执行过程分为两个阶...
阅读(532) 评论(0)

MapReduce程序运行中的排序问题

2016年4月5日19:43:27 MapReduce程序开发中的排序问题 作者:数据分析玩家         在MapReduce程序执行的第四步骤:对不同分区的数据,按照key进行排序、分组。在这里我们讲一下如何在MapReduce程序中进行自定义排序。         为了更好的说明问题,在文本博客中引入两个实例进行对比。先讲述第一个实例,这个实例我们并没有进行自定义排序,输入文件是...
阅读(756) 评论(0)

MapReduce程序开发中的Partitioner

2016年4月4日18:08:35                                                                              MapReduce程序开发中的Partitioner...
阅读(759) 评论(0)

MapReduce程序开发中的Combiner

2016年4月4日10:46:24  MapReduce程序开发中的Combiner 作者:数据分析玩家    在MapReduce程序的运行过程中,经过shuffle阶段:分区、排序、分组之后,可以使用Combiner类进行进一步的处理,但是Combiner这个类究竟是做什么的,其使用的限制条件究竟是什么,本文将对Combiner类进行全面的阐述。    假设在WordCount程序中,...
阅读(597) 评论(0)

MapReduce程序开发中的FileInputFormat与TextInputFormat

2016年4月3日20:17:44         MapReduce程序开发中的FileInputFormat与TextInputFormat        在MapReduce程序的开发过程中,往往需要用到FileInputFormat与TextInputFormat,但是这两个类究竟是用来做什么的,在源代码的追踪过程中,我们会发现TextInputFormat这个类继承自FileIn...
阅读(1256) 评论(0)
    个人资料
    • 访问:493673次
    • 积分:7967
    • 等级:
    • 排名:第2712名
    • 原创:326篇
    • 转载:80篇
    • 译文:0篇
    • 评论:90条
    最新评论