MultipleInputs类指定不同的输入文件路径以及输入文化格式
现有两份数据
phone
123,good number
124,common number
125,bad number
user
zhangsan,123
lisi,124
wangwu,125
现在需要把user和phone按照phone number连接起来。得到下面的结果
z...
分类:
其他好文 时间:
2015-03-29 16:37:53
阅读次数:
179
使用到Combiner编程(可插拔式)
在map端对输出先做合并,最基本是实现本地key合并,具有本地reduce功能
如果不用combiner,所有结果都是reduce完成,效率会底下
Combiner的的输入输出类型应该完全一致(实现如累加,最大值等功能)
job.setCombinerClass();
倒排索引基本实现
package cn.MapReduce.px;
impo...
分类:
其他好文 时间:
2015-03-28 17:23:38
阅读次数:
128
MapReduce二次排序原理
在map阶段,使用job.setInputFormatClass定义的InputFormat将输入的数据集分割成小数据块splites,同时InputFormat提供一个RecordReader的实现。
本例子中使用的时TextInputFormat,他提供的RecordReader会将文本的字节偏移量作为key,这一行的文本作为value。
这就是自定义Ma...
分类:
编程语言 时间:
2015-03-28 14:25:03
阅读次数:
218
原始数据
/*
* 原始数据
* 子 父
* Tom Lucy
Tom Jack
Jone Locy
Jone Jack
Lucy Mary
Lucy Ben
Jack Alice
Jack Jesse
TerryAlice
TerryJesse
PhilipAlma
Mark Terry
Mark Alma
*/
要求通过...
分类:
其他好文 时间:
2015-03-28 14:23:49
阅读次数:
119
背景随着集群规模和负载增加,MapReduce JobTracker在内存消耗,线程模型和扩展性/可靠性/性能方面暴露出了缺点,为此需要对它进行大整修。需求当我们对Hadoop MapReduce框架进行改进时,需要时刻谨记的一个重要原则是用户的需求。近几年来,从Hadoop用户那里总结出MapRe...
分类:
Web程序 时间:
2015-03-20 17:56:32
阅读次数:
207
spark是个啥?Spark是一个通用的并行计算框架,由UCBerkeley的AMP实验室开发。Spark和Hadoop有什么不同呢?Spark是基于map reduce算法实现的分布式计算,拥有Hadoop MapReduce所具有的优点;但不同于MapReduce的是Job中间输出和结果可以保存...
分类:
其他好文 时间:
2015-03-20 12:49:49
阅读次数:
306
Hadoop管道是Hadoop MapReduce的C++接口的代称。与流不同,流使用标准输入和输出让map和reduce节点之间相互交流,管道使用sockets作为tasktracker与C++编写的map或者reduce函数的进程之间的通道。JNI未被使用。...
分类:
其他好文 时间:
2015-03-20 10:59:31
阅读次数:
305
在正式分析新旧 API 之前, 先要介绍几个基本概念。 这些概念贯穿于所有 API 之中,因此, 有必要单独讲解。1.序列化序列化是指将结构化对象转为字节流以便于通过网络进行传输或写入持久存储的过程。反序列化指的是将字节流转为结构化对象的过程。 在 Hadoop MapReduce 中, 序列化的主...
Spark简介Spark是UC Berkeley AMP lab所开源的类Hadoop MapReduce的通用的并行,Spark,拥有Hadoop MapReduce所具有的优点;但不同于MapReduce的是Job中间输出结果可以保存在内存中,从而不再需要读写HDFS,因此Spark能更好地适用...
分类:
其他好文 时间:
2015-03-15 00:29:47
阅读次数:
172
Hbase在生态系统中的位置Hbase存储的逻辑视图Hbase的存储格式Hbase写数据流程Hbase快速响应数据Hbase在生态系统中的位置 HBase位于结构化存储层,Hadoop HDFS为HBase提供了高可靠性的底层存储支持,Hadoop MapReduce为HBase提供了高性能的计算....
分类:
其他好文 时间:
2015-03-11 21:19:10
阅读次数:
235