1.1读取hdfs中的文件。每一行解析成一个<k,v>。每一个键值对调用一次map函数        解析成2个<k,v>,分别是<0, hello you><10, hello me>。调用2次map函数。

1、读文件解析                                                                                            <k1,v1>

1.2 覆盖map(),接收1.1产生的<k,v>,进行处理,转换为新的<k,v>输出            public void map(k, v, ctx){

String[] splited = v.split("\t");

2、覆盖map,原始k、v  变新k、v                                                            for(String word : splited){

ctx.write(word, 1);

}

1.3 对1.2输出的<k,v>进行分区。默认分为1个区。                                           }

3、  <k,v>进行分区                                                                           <k2,v2>

1.4 对不同分区中的数据进行排序(按照k)、分组。分组指的是相同key的value放到一个集合中。        map输出后的数据是:<hello,1>,<you,1>,<hello,1>,<me,1>

4、k、v排序、分组                                                                                          排序后是:<hello,1>,<hello,1>,<me,1>,<you,1>

分组后是:<hello,{1,1}>,<me,{1}>,<you,{1}>

1.5 (可选)对分组后的数据进行规约。

5、规约

2.1 多个map任务的输出,按照不同的分区,通过网络copy到不同的reduce节点上。

6、map输出到reduce                                                                                  //reduce函数被调用的次数是3

2.2 对多个map的输出进行合并、排序。覆盖reduce函数接收的是分组后的数据,              public void reduce(k,vs, ctx){

实现自己的业务逻辑,处理后,产生新的<k,v>输出。                                             long sum = 0L;

for(long times : vs){

7、合并、排序                                                                                           sum += times;

}

ctx.write(k, sum);

}

<k3,v3>

2.3 对reduce输出的<k,v>写到hdfs中。                                                           hello   2

me      1

8、k、v写回hdfs                                                                               you     1

hadoop 8步走的更多相关文章

  1. JAVA EE企业级开发四步走完全攻略 [转]

    http://bbs.51cto.com/thread-550558-1.html 本文是J2EE企业级开发四步走完全攻略索引,因内容比较广泛,涉及整个JAVA EE开发相关知识,这是一个长期的计划, ...

  2. git 三步走

    git三步走: git add .        (注:别忘记后面的.,此操作是把Test文件夹下面的文件都添加进来) git commit  -m  "提交信息"  (注:“提交 ...

  3. 关于pythoh面向过程开发人员三步转面向对象的补充,再加一步,四步走战略。转面向对象也可以有固定公式。

    前言: oop非常非常非常重要.搞不懂oop,就玩不了python,就算能写也一定是写代码时候喜欢靠猜瞎猫碰死老鼠写得心很虚.为什么这么说呢,我也是从面向过程编程到死走过来的,一路def到死,一看到有 ...

  4. 【JAVA EE企业级开发四步走完全攻略】

    本文是J2EE企业级开发四步走完全攻略索引,因内容比较广泛,涉及整个JAVA EE开发相关知识,这是一个长期的计划,单个发blog比较零散,所以整理此索引,决定以后每发一季JAVA EE blog后会 ...

  5. Python学习笔记(一)三步走安装pip

    pip是用来方便地管理Python的第三方包的,由于此前玩Python仅仅是浅尝辄止,用的是python(x,y),但是这里并不代表你想用什么包都能从里面找到的,所以我把python(x,y)卸了,然 ...

  6. Knative 实战:三步走!基于 Knative Serverless 技术实现一个短网址服务

    短网址顾名思义就是使用比较短的网址代替很长的网址.维基百科上面的解释是这样的: 短网址又称网址缩短.缩短网址.URL 缩短等,指的是一种互联网上的技术与服务,此服务可以提供一个非常短小的 URL 以代 ...

  7. CentOS下nagios报警飞信部署四步走

    CentOS下nagios报警飞信部署四步走   今天 帮群里一兄弟配了下nagios上的飞信,这个东西 我个人感觉还是很实用的,不过好久没配了,今天配置了一遍,顺便 就把过程记录下来了,供大家学习! ...

  8. C#WPF数据绑定模板化操作四步走

    前言:WPF数据绑定对于WPF应用程序来说尤为重要,本文将讲述使用MVVM模式进行数据绑定的四步走用法: 具体实例代码如下: 以下代码仅供参考,如有问题请在评论区留言,谢谢 1 第一步:声明一个类用来 ...

  9. 原生js之四步走搞定Ajax

          说到Ajax,不得不先提一下HTTP(HTTP,HyperText Transfer Protocol)协议,中文名:超文本传输协议,是互联网上应用最为广泛的一种网络协议.所有的WWW文件 ...

随机推荐

  1. Kafka的配置文件详细描述

    在kafka/config/目录下面有3个配置文件: producer.properties consumer.properties server.properties (1).producer.pr ...

  2. 转!!java中关键字volatile的作用

    用在多线程,同步变量. 线程为了提高效率,将某成员变量(如A)拷贝了一份(如B),线程中对A的访问其实访问的是B.只在某些动作时才进行A和B的同步.因此存在A和B不一致的情况.volatile就是用来 ...

  3. openfire控制台登录不了的解决

    不知道为什么,openfire服务器后台,发生几次密码都登录不上去的问题,密码肯定没错,第一次就是默认的用户名:admin,密码:admin,然,第三天,说我密码错误,后来重装软件才弄好, 然后又发生 ...

  4. Hbase之测试数据

    info ship user name age height phone addr email dept salary create 'user','info','ship'; put 'user', ...

  5. Hbase之缓存扫描加快读取速度

    import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hbase.HBaseConfiguration; impo ...

  6. phalcon: dispatcher调度控制器

    phalcon: dispatcher调度控制器 我所理解的dispatcher调度控制器,实际上是对 router或者特定的url参数给与重组. 引用特定的类: //add use Phalcon\ ...

  7. jquery 学习

    地址:http://www.w3school.com.cn/jquery/jquery_dom_add.asp

  8. windows+tomcat 7配置二级域名访问其他web程序

    1.在域名管理中做好二级域名的解析 2.在tomcat的server.xml中增加如下: <Host name="wx.ai77.cn" debug="0" ...

  9. CSS:static/relative/absolute

    static - default and this is the FLOW. ------------------------------------------------------------- ...

  10. IE10 CSS hack,IE兼容问题

    IE10 CSS hack,IE兼容问题 作者: 雪影 发表于2013 年 4 月 25 日 分类:技术分享 | 暂无评论 | 人气: 376 度 首先,ie10不支持条件注释了. 方法一:特性检测: ...