一、知识预热
1、了解hadoop概念,及其家族树。
hadoop是是一个能够对大量数据进行分布式处理的软件框架。
Hadoop Common: 在0.20及以前的版本中,包含HDFS、MapReduce和其他项目公共内容,从0.21开始HDFS和MapReduce被分离为独立的子项目,其余内容为Hadoop Common
HDFS: Hadoop分布式文件系统(Distributed File System) - HDFS (Hadoop Distributed File System)
MapReduce:并行计算框架,0.20前使用 org.apache.hadoop.mapred 旧接口,0.20版本开始引入org.apache.hadoop.mapreduce的新API
HBase: 类似Google BigTable的分布式NoSQL列数据库。(HBase和Avro已经于2010年5月成为顶级 Apache 项目)
Hive:数据仓库工具,由Facebook贡献。
Zookeeper:分布式锁设施,提供类似Google Chubby的功能,由Facebook贡献。
Avro:新的数据序列化格式与传输工具,将逐步取代Hadoop原有的IPC机制。
Pig: 大数据分析平台,为用户提供多种接口。
Ambari:Hadoop管理工具,可以快捷的监控、部署、管理集群。
Sqoop:于在HADOOP与传统的数据库间进行数据的传递。
上图,我是这么理解的,类似于之前的java学习,java是核心,在此基础之上 衍生了spring,struct,hibernate等等有助于java开发的框架。
相对于hadoop是核心,在此基础之上有MapReduce,HDFS,Hive,HBase等各种补充hadoop功能的子项目。
2、各子项目功能
Common: 为其它子项目提供支持的常用工具,提供基本服务, 并且会为运行在该平台上的软件开发提供所需的API.
Avro: 用于数据序列化的系统.
MapReduce: 是一种编程模型, 用于大规模数据集的并行计算.
HDFS: 是一个分布式文件系统.
Chukwa: 是开源的数据收集系统, 用于监控和分析大型分布式系统的数据.
Hive: 是一个建立在Hadoop基础之上的数据仓库, 提供了一些用于对Hadoop文件中的数据集进行数据整理, 特殊查询和分析存储的工具. 它支持类似于传统RDBMS中的SQL语言的查询语言.
HBase: 是一个分布式的, 面向列的开源数据库, 适合于非结构化数据存储的数据库.主要用于需要随机访问, 实时读写的大数据.
Pig: 是一个对大型数据集进行分析, 评估的平台. 它的结构能够经受住高度并行化的检验,使得它能够处理大型的数据集.
ZooKeeper: 是一个为分布式应用所设计的开源协调服务.主要为用户提供同步, 配置管理, 分组和命名等服务, 减轻分布式应用程序所承担的协调任务.
闲看 云卷云舒 风轻云淡