位置:{Hadoop_HOME}\hadoop-0.20.1\src\examples\org\apache\hadoop\examples\WordCount.java

其中{Hadoop_HOME}是安装后的Hadoop所在的目录

Hadoop自带WordCount程序:

package org.apache.hadoop.examples;import java.io.IOException;
import java.util.StringTokenizer;import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapreduce.Job;
import org.apache.hadoop.mapreduce.Mapper;
import org.apache.hadoop.mapreduce.Reducer;
import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;
import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;
import org.apache.hadoop.util.GenericOptionsParser;public class WordCount {public static class TokenizerMapper extends Mapper<Object, Text, Text, IntWritable>{private final static IntWritable one = new IntWritable(1);private Text word = new Text();public void map(Object key, Text value, Context context) throws IOException, InterruptedException {StringTokenizer itr = new StringTokenizer(value.toString());while (itr.hasMoreTokens()) {word.set(itr.nextToken());context.write(word, one);}}}public static class IntSumReducer extends Reducer<Text,IntWritable,Text,IntWritable> {private IntWritable result = new IntWritable();public void reduce(Text key, Iterable<IntWritable> values, Context context) throws IOException, InterruptedException {int sum = 0;for (IntWritable val : values) {sum += val.get();}result.set(sum);context.write(key, result);}}public static void main(String[] args) throws Exception {Configuration conf = new Configuration();String[] otherArgs = new GenericOptionsParser(conf, args).getRemainingArgs();if (otherArgs.length != 2) {System.err.println("Usage: wordcount <in> <out>");System.exit(2);}Job job = new Job(conf, "word count");job.setJarByClass(WordCount.class);job.setMapperClass(TokenizerMapper.class);job.setCombinerClass(IntSumReducer.class);job.setReducerClass(IntSumReducer.class);job.setOutputKeyClass(Text.class);job.setOutputValueClass(IntWritable.class);FileInputFormat.addInputPath(job, new Path(otherArgs[0]));FileOutputFormat.setOutputPath(job, new Path(otherArgs[1]));System.exit(job.waitForCompletion(true) ? 0 : 1);}
}

Hadoop自带WordCount.java程序相关推荐

  1. Hadoop自带的一些程序示例

    一.PiEstimator.java 位置:E:\Hadoop\hadoop-0.20.1\src\examples\org\apache\hadoop\examples /*** Licensed ...

  2. Hadoop(八)Java程序访问HDFS集群中数据块与查看文件系统

    阅读目录(Content) 一.HDFS中数据块概述 1.1.HDFS集群中数据块存放位置 1.2.数据块(data block)简介 1.3.对分布式文件系统中的块进行抽象会带来很多好处 二.Jav ...

  3. hadoop的基本命令、java程序处理hd…

    基本命令: hadoop fs -命令 (这里命令一般和Linux中的命令一样) ※这里一定要在~/.bashrc中进行配置,不然不会生效,在配置文件中加上下面语句 export HADOOP_HOO ...

  4. Hadoop编写MapReduce之入门案例WordCount(自带+编写java)

    目录标题 Hadoop自带案例WordCount运行 MapReduce可以很好地应用于各种计算问题 网页查看 集群上jar包的位置 程序的介绍 自己编写WordCount的project(MapRe ...

  5. java程序员的大数据之路(2):创建第一个Hadoop程序

    环境 Ubuntu 16.04 + Hadoop 2.7.4 + Intellij idea 2017.2 + jdk 1.8 创建过程 新建工程 新建一个工程 输入工程名 可以随便给工程起一个名字, ...

  6. wordcount linux java_linux下在eclipse上运行hadoop自带例子wordcount

    启动eclipse:打开windows->open perspective->other->map/reduce 可以看到map/reduce开发视图.设置Hadoop locati ...

  7. hadoop jar包_计算机毕业设计中hadoop上运行Java程序

    点击上方"蓝字",关注我们. 第一种:原生态运行jar包 1,利用eclipse编写Map-Reduce方法,一般引入Hadoop-core-1.1.2.jar.注意这里eclip ...

  8. java程序员的大数据之路(3):用maven构建Hadoop项目

    背景 由于Hadoop项目多数是比较大的项目,因此我们选择使用构建工具来构建Hadoop项目,这里我们使用的是maven.当然也可以使用Gradle等比较流行的构建工具 构建过程 这里总结一下我使用I ...

  9. 《Hadoop MapReduce实战手册》一1.4 给WordCount MapReduce程序增加combiner步骤

    本节书摘来异步社区<Hadoop MapReduce实战手册>一书中的第1章,第1.4节,作者: [美]Srinath Perera , Thilina Gunarathne 译者: 杨卓 ...

最新文章

  1. matlab plot画图指定线型和颜色
  2. Python--strip()学习记录
  3. 乡村振兴谋定齐鲁样板-农业大健康·周荣江:国情讲坛创新
  4. linux 固定usb设备,linux下多个usb设备固定名称方法
  5. eclipse添加或者绑定约束文件
  6. OC之集合的创建及应用
  7. Rich feature hierarchies for accurate object detection and semantic segmentation(RCNN)
  8. (转)巴菲特的投资智慧--1998年的演讲
  9. 冯.诺依曼结构 总线 接口 南桥 北桥
  10. 电子商务订单处理及发货流程
  11. 云游昆大丽(八)——木府流芳
  12. TCP/IP层次安全性
  13. transformers的近期工作成果综述
  14. D神文木源:创业和做生意不同,区块链现在没有什么创业精神
  15. 最大公共子串----快手校招真题
  16. SRS开始支持SRT
  17. OTL、OCL、BTL的区别
  18. LINUX CMA 初探
  19. 计算机科学在生物信息中的应用,计算机科学在生物信息学中的应用
  20. Git:解决Your branch is ahead of ‘origin/master‘ by N commits问题

热门文章

  1. 2015年科技巨头的十个开源产品,不只是.NET、Swift
  2. Spring Cloud Alibaba - 20 Nacos StandAlone模式下的数据存储(Derby)及新增登录用户
  3. Oracle-UNDO表空间解读
  4. oracle decode 01427,dbms_hm.run_check遇到ORA-00604、ORA-01427
  5. Spring-data-jpa和mybatis的比较及两者的优缺点?
  6. python入门之控制结构顺序与选择结构_Python 入门之控制结构 - 顺序与选择结构——第1关:顺序结构...
  7. 使用JavaScript代码制作99乘法表
  8. 37镇魔曲网页版服务器状态,37镇魔曲网页版各职业攻略分析
  9. pc双网卡实现路由转发_route命令如何使用?如何利用route命令实现内外网切换?...
  10. windows Pycharm 常用快捷键