摘要:
Mapper: import java.io.IOException; import org.apache.hadoop.io.LongWritable; import org.apache.hadoop.io.NullWritable; import org.apache.hadoop.io.Te 阅读全文
摘要:
所需的 pom 依赖: <dependencies> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-client</artifactId> <version>2.7.3</version> </depende 阅读全文
摘要:
排序:注意排序按照 Key2(Mapper输出的key) 排序,key2 需要实现WritableComparable接口 数据准备: 7369,SMITH,CLERK,7902,1980/12/17,800,,20 7499,ALLEN,SALESMAN,7698,1981/2/20,1600,3 阅读全文
摘要:
问题分析<!--more--> 实现代码 InversIndex类 import java.io.IOException; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.Path; import or 阅读全文
摘要:
排序和分组 在map和reduce阶段进行排序时,比较的是k2。v2是不参与排序比较的。如果要想让v2也进行排序,需要把k2和v2组装成新的类,作为k2,才能参与比较。 分组时也是按照k2进行比较的。 案例说明 数据: zhangsan@163.com600002014-02-20 lisi@163 阅读全文
摘要:
图示说明: 图示说明: 有如下订单数据: 现在需要求出每一个订单中最贵的商品。 需求分析实现 (1)利用“订单id和成交金额”作为key,可以将map阶段读取到的所有订单数据按照id分区,按照金额排序,发送到reduce。 (2)在reduce端利用groupingcomparator将订单id相同 阅读全文
摘要:
存在的问题 HDFS设计是用来存储海量数据的,特别适合存储TB、PB量级别的数据。但是随着时间的推移,HDFS上可能会存在大量的小文件,这里说的小文件指的是文件大小远远小于一个HDFS块(128MB)的大小;HDFS上存在大量的小文件至少会产生以下影响: 消耗NameNode大量的内存 延长MapR 阅读全文
摘要:
问题:在cdh中 reducetask个数不管设置几个 最终都是一个执行。 原因:两个版本中 本地执行环境api发生了改变 注意:两个版本的api在yarn集群模式都是一样的。<!--more--> localJobRunner: cdh: int numReduceTasks = this.job 阅读全文
摘要:
分布式缓存DistributedCache 概念: 所谓的分布式缓存指的是 hadoop框架可以把用户指定的小文件发送到各个maptask运行的机器上,进行缓存,便于maptask读取该文件内容 进行关联查询操作,这就是所谓的map端join。 概念: 适用场合: <!--more--> 通常适用于 阅读全文
摘要:
压缩目的: 降低数据磁盘存储空间,减少传输数据的IO量 压缩追求的指标: 压缩时间 越短越好 压缩化 越大越好<!--more--> 硬件需求如:CPU 算法支持 mr中可以使用压缩的地方: map的输出数据进行数据压缩,减少shuff给reduce的数据量 reduce的输出进行数据压缩,减少最终 阅读全文