Hadoop2.0源码包简介
1、解压源码包:
2、目录结构:
hadoop-common-project:Hadoop基础库所在目录,如RPC、Metrics、Counter等。包含了其它所有模块可能会用到的基础库。
hadoop-mapreduce-project:MapReduce框架的实现,在第一代MR即MRv1中,MapReduce由编程模型(map/reduce)、调度系统(JobTracker和TaskTracker)和数据处理引擎(MapTask和ReduceTask)等模块组成,而MRv2的资源调度功能由新增的YARN完成。其它两个不变,自身仅包含非常简单的任务分配功能。
hadoop-hdfs-project:Hadoop分布式文件系统实现,Hadoop1.0中是单个NameNode实现,而Hadoop2.0支持多NameNode,同时解决了NameNode单节点故障。
hadoop-yarn-project:Hadoop资源管理系统YARN实现。该系统能够统一管理系统中的资源,并按照一定的策略分配给各个应用进程。
3、Hadoop2.0新增分支YARN的hadoop-yarn-project目录:
hadoop-yarn-api:YARN API,给出了YARN内容涉及的4个主要RPC协议的JAVA声明和Protocol Buffers定义。这四个RPC分别是ApplicationClientProtocol、ApplicationMasterProtocol、ContainerManagementProtocol和ResourceManagerAdministrationProtocol。
hadoop-yarn-common:YARN Common,包含了YARN底层库实现,包括事件库、服务库、状态库、Web界面库等。
hadoop-yarn-applications:YARN Applications,包括两个Application编程实例,分别是distributedshell和Unmanaged AM。
hadoop-yarn-client:YARN Client,封装了几个与YARN RPC协议交互相关的库,方便用户开发应用程序。
hadoop-yarn-server:YARN Server,给出了YARN的核心实现,包括ResourceManager、NodeManager、资源管理器等核心组件的实现。