Hadoop0.20更新笔记

转载 2012年03月30日 21:20:27

本节向大家介绍一下Hadoop0.20更新的内容,在学习Hadoop的过程中你可能会遇到这方面的问题,在这里和大家分享一下,相信通过本节的介绍大家对Hadoop0.20更新有一定的认识。下面是详细介绍。

Hadoop0.20更新笔记

最近学习hadoop0.20.1,网上找到一篇文章《What’sNewinHadoopCore0.20》,非完整的给翻译了一下,为以后检索方便,发上来保存一份。如果能读懂英文的,千万不要看下面的中文。

HadoopCore0.20.0在2009年4月22日发布。这一发布相对0.19发布,有很多用户使用层面上的改变。

Core
Hadoop中两个主要的组件是分布式文件系统(HDFS)和MapReduce,那两个组件分别挪入各自的子项目中,因此他们能拥有自己的发布周期,并且更容易对开发进行管理。但是在0.20发布中,这两个组件还是在一起发布。在这次发布中,hadoop-size.xml被拆分成三个配置文件:core-site.xml、hdfs-site.xml和mapred-site.xml(HADOOP-4631)。你也可以继续使用单一的hadoop-site.xml,hadoop仅仅会提出一个警告而已。默认配置文件已经移出conf文件夹,转而放到.jar文件中,其内容可以看docs文件夹中的html文件。不赞成start-all.sh、stop-all.sh的使用,建议使用start-dfs.sh、start-mapred.sh、stop-dfs.sh、stop-mapred.sh来代替。
上面说的是一些主要的变化,而允许slaves文件中加注注释(HADOOP-4454)对实际操作更为有用。
Hadoop配置文件支持Xinclude元素,用于引入其他的配置文件(HADOOP-4944(url:https://issues.apache.org/jira/browse/HADOOP-4944))。这一机制能让配置文件更加模块化、更易于重用。
围绕安全问题,hadoop作出了一系列动作。其中0.20.0增加了service-levelauthorization(HADOOP-4348)。开发人员能够限制客户端与hadoopdaemons的通信。
LZOcompressionlibraries因为许可的原因移出了hadoopcore,如果你的代码使用GPL许可证,你还是能从hadoop-gpl-compression项目中得到LZO。

HDFS
HSFSappend从0.19.1开始默认disable。
hadoop增加了一个新的管理命令:hadoopdfsadmin-saveNamespace。在安全模式下,这个命令能让namenode转存namespace到磁盘。

MapReduce
在Hadoop0.20更新中,最大的变化是加入了一个叫“ContextObjects”的新JavaAPI。把Mapper和Reduce通过引入ContextObject变成抽象类(不是接口),是为了让API将来更易于演进。
1.JobConf不再存在,Job配置信息由Configuration持有;
2.现在在map()或reduce()方法中,更容易得到job配置信息。仅需要调用context.getConfiguration()。
3.新的API支持pull形式的迭代。在此之前,如果你想在mapper中遍历一下记录,你不得不把他们保存到Mapper类的实例变量中。在新的API中,只需要调用nextKeyValue()即可。
4.你还能覆盖run()方法,来控制mapper如何运行。
5.新API中不再有IdentityMapper和IdentityReducer两个类,因为默认Mapper和Reducer执行了标识函数。
新的API并非向后兼容,所以你必须重写你的应用。注意,新的API在org.apache.hadoop.mapreduce包及其子包中,而旧的API在org.apache.hadoop.mapred。
Multipletaskassignment,这一优化让JobTracker在一次心跳周期内能分配给tasktracker多个任务,提高了利用率。同时引入mapred.reduce.slowstart.completed.maps新的配置参数(默认0.05)。
Inputformats增加了一些有意思的改进。FileInputFormat在选择那个主机有更多的需要分割的文件上做的更好。在另一方面0.20引入了CombineFileInputFormat类,他能把许多小文件变成一个split。
Gridmix2是第二代MapReduce工作量基准模型套件。

Contrib
两个新捐献的模块在0.20分支中出现:
HDFSProxy,他能暴露HDFS一个只读的HSFTP接口,用于提供安全的、只读的访问。
Vaidya,这是一个工具,用于在MapReducejob运行后通过检查作业历史和配置信息来诊断错误。针对常见的问题能提供一些改进意见,使得你的代码能避免出错。本节关于Hadoop0.20更新介绍到这里。

来源:http://developer.51cto.com/art/201006/204220.htm


笔记本电脑换新硬盘重装系统经验

前两天笔记本总是各种卡,一开始以为是
  • viggin
  • viggin
  • 2014年06月03日 21:02
  • 12945

数据挖掘笔记-分类-回归算法-梯度上升

基于Logistic回归和Sigmoid函数的分类,首先看下它的优缺点。 优点:计算代价不高,易于理解与实现 缺点:容易欠拟合,分类精度可能不高 使用数据类型:数值型和标称型数据 ...
  • wulinshishen
  • wulinshishen
  • 2014年06月23日 17:18
  • 3152

Linux igmp snooping 学习笔记 之一 相应的数据结构与初始化

一、igmpsnooping相关的数据结构 组播相关的数据结构主要有三个,下面分别分析:   1、struct net_bridge_mdb_htable     /*组播组数据库转发表,...
  • lickylin
  • lickylin
  • 2014年04月27日 15:10
  • 3749

Hadoop0.20 安装部署笔记

Hadoop部署   本文整理了在Redhat Linux ES5上部署、配置hadoop的经验。   部署环境列表: Redhat Linux ES5两台 : 10.68.219.42  ...
  • jqg1011
  • jqg1011
  • 2011年09月20日 10:52
  • 456

CentOS7安装配置hadoop0.20,附带虚拟机集成资源包

主要讲解hadoop的入门安装配置环境为vmware11,CentOS 7,Hadoop 0.20.2,jdk1.8这里解释下为什么用hadoop0.20.2,虽然最新版的hadoop性能上有了很大的...
  • feiepuhuo001
  • feiepuhuo001
  • 2016年07月12日 16:28
  • 358

hadoop 0.20 程式開發

 零. 前言開發hadoop 需要用到許多的物件導向語法,包括繼承關係、介面類別,而且需要匯入正確的classpath,否則寫hadoop程式只是打字練習...用類 vim 來處理這種複雜的程式,有可...
  • youmumzcs
  • youmumzcs
  • 2011年03月21日 20:19
  • 363

CDH3(Hadoop 0.20) Install -- RedHat6/CentOS6 -- Single Node

1 prepare for installation 1.1 Make sure your host name is valid For example, if your hostname is v...
  • u010114214
  • u010114214
  • 2013年10月23日 22:08
  • 1265

Hadoop 0.20 API CHM

  • 2009年12月17日 14:54
  • 2.02MB
  • 下载

hadoop-0.20_程式设计.pdf

  • 2011年07月20日 17:57
  • 8.24MB
  • 下载

CentOS下hadoop0.20安装完成版

  • 2016年07月12日 08:50
  • 1KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Hadoop0.20更新笔记
举报原因:
原因补充:

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