
MapReduce
MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算。概念"Map(映射)"和"Reduce(归约)",是它们的主要思想,都是从函数式编程语言里借来的,还有从矢量编程语言里借来的特性。它极大地方便了编程人员在不会分布式并行编程的情况下,将自己的程序运行在分布式系统上。 当前的软件实现是指定一个Map(映射)函数,用来把一组键值对映射成一组新的键值对,指定并发的Reduce(归约)函数,用来保证所有映射的键值对中的每一个共享相同的键组。
日月星辰TEL
如果技术不用于分享,将黯然失色...
展开
-
MapReduce之partition按照key值分区
1、设置Partitioner类和reducer个数job.setPartitionerClass(MyPartitioner.class);job.setNumReduceTasks(3);2、编写Partitioner类 /* * 对mapper的结果进行分区,让多个reducer分别对多个partition文件并行处理 */ private static cla...原创 2019-10-12 14:30:53 · 1316 阅读 · 0 评论 -
MapReduce设置输出压缩的三种方法
1、FileOutputFormat设置 // 优化措施一:压缩MapReduce的输出结果-->使用Gzip压缩-->输出空间占比小 FileOutputFormat.setCompressOutput(job, true); //setOutputCompressorClass // 使用输出文件压缩,设置reduce输出的压缩算法:Gzip压缩 F...原创 2019-09-29 13:14:16 · 3118 阅读 · 0 评论 -
MapReduce实现内连接查询
1、测试数据file1(模拟地区表)1 北京2 上海3 广州4 深圳5 南京6 杭州7 成都8 重庆9 厦门10 武汉file2(模拟年度地区收入)1 2017 64351 2018 75352 2016 64322 2017 85322 2018 74326 2019 85346 2017 64346 2019 63216 2018 4222...原创 2019-10-06 22:13:57 · 1100 阅读 · 0 评论 -
MapReduce实现倒序排序的两种方法
目录一、外部比较器实现 二、自定义序列化比较器实现一、外部比较器实现需要注意,这里的比较是对MapReduce中key类型的比较,并且key的类型为InWritable类型。1、自定义比较器继承WritableComparator类package com.gxwz.utils;import org.apache.hadoop.io.IntWritable...原创 2019-10-11 17:50:41 · 2575 阅读 · 0 评论