hadoop学习001

原创 2015年11月21日 12:14:45

1,mac安装eclipse

2,在eclipse上配置hadoop开发环境

3,重写hadoop中wordcount例子

  • 新建Map/Reduce Project,写入wordcount源码
  • 如果GenericOptionsParser类找不到,则在Build Path的Libraries添加位于hadoop目录下build/ivy/lib/Hadoop/Common下的commons-cli-1.2.jar包
  • 在工程目录下添加in文件夹,并添加若干个文本文件,使用Run on Hadoop编译
  • 编译中出现NoClassDefFoundError :org/apache/commons/logging/LogFactory异常,则需要添加Commons-logging-1.0.4.jar包
  • 运行后结果中只有usage <in> <out>,选择Run Configuration设置入口参数为 in out
  • 成功运行后工程目录会出现out文件夹,cat out/*查看文件内容即为结果
4,wordcount分析
  • 定义Configuration对象管理配置文件,Configuraton conf = new Configuration(); 应该是采用默认配置
  • 定义Job,并起个名字,Job job = new Job(conf, "word count");
  • 设置Mapper类,Combiner类,Reducer类,job.setMapperClass(TokenizerMapper);
  • 设置输出的key和value类型,job.setOutputKeyClass(Text.class);
  • 设置输入输出文件目录,FileInputFormat.addInputPath(job, new Path(otherArgs[0]));
  • Hadoop的核心思想是分而治之,即由Mapper函数划分工作,Reducer函数汇总结果
  • 针对wordcount的处理过程如下:

注释:

  • 输入为两个文件,mapper则划分成两个任务(红,绿)
  • mapper输入为<首字母偏移, 一行内容>
  • combiner相当于本地的reducer,是hadoop的一种优化策略,可在一定程度上减少网络间数据传输量

  



版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zs918/article/details/49963443

mtd学习报告003

 下面我们就以s3c2410和 nand flash为例来讲解如何在flash上划分分区, 及划分分区后的实现原理. 假设我们要在64M的flash上建立四个分区分别用来做不同的共用, 具体如下:  ...
  • aaronychen
  • aaronychen
  • 2009-03-12 14:46:00
  • 3076

ARM学习报告(杜云海)

  • 2011年01月26日 21:58
  • 3.76MB
  • 下载

大数据文件分隔符

hadoop 文件分隔符
  • yangshangwei
  • yangshangwei
  • 2015-12-18 10:14:19
  • 4039

ARM学习报告by杜云海 附源码

  • 2010年02月04日 14:04
  • 1.25MB
  • 下载

MTD学习报告005

 Drivers/mtd/mtd_blkdevs.c:static int blktrans_open(struct inode *i, struct file *f){       struct m...
  • aaronychen
  • aaronychen
  • 2009-04-03 09:19:00
  • 4792

Hadoop学习系列之Hadoop、Spark学习路线(很值得推荐)

Hadoop学习系列之Hadoop、Spark学习路线(很值得推荐) 文章出自:http://www.cnblogs.com/zlslch/p/5448857.html 1 Java基础...
  • jianghero
  • jianghero
  • 2018-01-23 16:51:40
  • 398

学习Hadoop第三课(Hadoop安装与配置)

上节我们学习了JDK安装,这节我们学习一下Hadoop的安装及环境配置        首先我们需要到Apache官网下载我们需要的Hadoop版本,Apache产品官网是:http://archiv...
  • u012453843
  • u012453843
  • 2016-09-04 17:12:35
  • 2997

从零开始学Hadoop----浅析HDFS(一)

之前,我们简单介绍了一下Hadoop,知道他是一个处理大数据的框架。今天我们来看看Hadoop的核心构成之一—-HDFS. 这次我们知道了HDFS是一个分布式的文件存储系统,它的一些基本的概...
  • u010168160
  • u010168160
  • 2016-05-10 08:58:01
  • 4892

学习Hadoop的前提条件

Apache Hadoop是入门点,或者我们可以说是进入整个大数据生态系统的基础。它是大数据生态系统中大多数高级工具,应用程序和框架的基础,但是在学习Apache Hadoop时,还需要事先知道一些事...
  • boonya
  • boonya
  • 2017-01-19 12:31:34
  • 1154
收藏助手
不良信息举报
您举报文章:hadoop学习001
举报原因:
原因补充:

(最多只允许输入30个字)