第1章 源代码环境准备
1.1 Hadoop生态系统
(a). Hadoop Common: 为Hadoop的其它项目提供一些常用工具,主要包括系统配置工具Configuration、远程过程调用RPC、序列化机制和Hadoop抽象文件系统FieSystem等。
(b). Avro: 是一个数据序列化系统。可以将数据结构或者对象转换成便于存储和传输的格式。
(c). Zookeeper: 是一个分布式的服务框架。可用于处理分布式的一些数据管理问题,如统一命名服务、状态同步服务、集群管理、分布式应用配置项的管理等。
(d). HDFS: Hadoop分布式文件系统(Hadoop Distributed File System),是Hadoop体系中数据存储管理的基础。
(e). MapReduce: 是一种计算模型,用于进行大数据量的计算。
(f). HBase: 是google的BigTable的开源实现,是一个针对结构化数据的可伸缩、高可靠、高性能、分布式和面向列的动态模式数据库。
(g). Hive: 是建立在Hadoop基础上的数据仓库架构。
(h). Pig: 是对大型数据集进行分析 和评估的平台,数据分析工具。
(i). Mahout: 在Hadoop基础上创建一些可扩展的机器学习领域经典算法的实现。
(j). X-RIME: 开源的社会网络分析工具。
(k). Crossbow: 利用Hadoop集群进行生物计算。
(l). Chukwa: 开源的数据收集系统。
(m). Flume: 日志收集系统。
(n). Sqoop: 是SQL-to-Hadoop的缩写,主要是在结构化数据存储与Hadoop之间进行数据交换。
(o). Oozie: 开源工作流引擎。
1.2 准备Hadoop环境
(a). JDK
可以不配置环境变量,但是有些第三方的程序会把自己的JDK路径加到PATH环境变量中,所有最好 还是手动配置JAVA_HOME、CLASSPATH和PATH等环境变量。
(b). Eclipse
(c). Ant
添加ANT_HOME环境变量,并在PATH中加入"%ANT_HOME%\bin"。
(d). Ivy
安装apache Ivy,用于管理项目的外部构建依赖项。
(e). 安装类Unix Shell环境 Cygwin
注意:Cygwin只针对widows操作系统,其它系统不用安装。
在安装程序的步骤4(Cygwin Setup-Select Package)中选择Unix的在线编辑器sed,可以利用Search输入框快速找到sed。
(f). 下载Hadoop
注意:hadoop-1.2.1.tar.gz 里面包含源码
hadoop-1.2.1-bin.tar.gz 里面没有源码
(g). 创建Eclipse项目:
(1) 解压下载的 hadoop-1.2.1.tar.gz 包,到目录E:\hadoop-1.2.1
(2) 启动Cygwin定位到“目录E:\hadoop-1.2.1”,执行“ant eclipse”
(3) 打开eclipse的File --- New --- Java Project,创建一个新的Java项目,选择项目的位置为“E:\hadoop-1.2.1”,就好。
备注:此篇为读书笔记,后面会持续更新,如有问题请留言。
相关推荐
Hadoop的组成部分包括Hadoop Common、Hadoop HDFS(分布式文件系统)、Hadoop YARN(资源调度器)和Hadoop MapReduce(并行计算框架)。Hadoop Common就是这些组件的基础,它提供了一套跨所有Hadoop子项目的共享实用...
Hadoop的源码项目结构主要包括hadoop-common-project、hadoop-hdfs-project、hadoop-mapreduce-project、hadoop-yarn-project等,每个项目下又有多个子项目,包含了Hadoop运行所需的各个组件和客户端等。 在实际...
Hadoop的Common辅助工具集成了HDFS的数据存储、MapReduce的计算和资源调度功能。YARN(Yet Another Resource Negotiator)是Hadoop的资源管理平台,负责资源的分配和任务调度。 **Hadoop的商业应用** Hadoop商业...
- **概念介绍**: 对Hadoop的概念进行了全面的阐述,适合初学者快速了解Hadoop的基本原理和技术架构。 - **技术细节**: 提供了关于Hadoop核心技术(如HDFS、YARN等)的深入解析,便于理解其内部工作机制。 - **...
《IT十八掌HADOOP笔记》详述了Hadoop这一分布式计算框架的原理、安装配置以及核心组件。Hadoop由Doug Cutting创立,是一款开源软件,旨在实现可靠、可伸缩的分布式计算。它主要由HDFS(Hadoop Distributed File ...
5、Hadoop生态圈的学习笔记,主要记录HDFS、MapReduce、Yarn相关读书笔记及源码分析等 5.1 HDFS Hadoop快速入门 HDFSOverView Hadoop广义生态系统 Hadoop高可用配置 HadoopCommon分析 HDFS集群相关管理 HDFS Shell ...
对于Hadoop的其他组件,如hdfs、mapreduce和hive,它们的编译过程与common类似。只需要按照相同的步骤设置Ant Builder并进行编译。值得注意的是,hive的编译可能稍微复杂一些,可能需要修改`shims`目录下的`ivy.xml`...
- **环境变量配置**:根据官方文档要求,需要设置 `HADOOP_HOME` 或者一组环境变量包括 `HADOOP_COMMON_HOME`、`HADOOP_MAPRED_HOME`、`HADOOP_YARN_HOME`、`HADOOP_HDFS_HOME` 和 `ZOOKEEPER_HOME`。鉴于操作环境的...
在Java笔记中提到的common组件是Hadoop的核心库,提供了一系列用于分布式文件系统和通用I/O的接口。Avro则允许不同语言之间进行高效的数据交换。MapReduce是处理大规模数据集的模型,它将复杂计算分解为映射和归约两...
MapReduce 的设计目标是为了简化大型分布式系统的编程,使得开发者无需深入了解分布式底层细节就能编写处理海量数据的应用。 #### 二、YARN 概述 YARN (Yet Another Resource Negotiator) 是 Hadoop 2.x 版本之后...