Hadoop的项目结构
-
Hadoop Common,
Common 是为Hadoop其他组件提供公共库的,是一个非常基础层次
-
Hadoop HDFS
HDFS是负责整个分布式文件的存储,利用许多的服务器进行数据的存储
-
Hadoop YARN
YARN专门负责资源的调度
-
Hadoop MapReduce
Hadoop2.0后,MapReduce变成是专门做离线处理和批处理的
-
Hadoop Spark
spark是一个类似Hadoop MapReduce的通用并行框架,也是使用Reduce函数去做数据处理。但是和MapReduce不同的是:spark是基于内存计算,而mapreduce是基于磁盘运算,mapreduce在进行数据处理时都要将数据写到磁盘去,处理完成后要将数据写到HDFS上去,所以spark的性能要比mapreduce要高。
-
Hadoop Hive
Hive是整个Hadoop生态圈中实现数据仓库的功能,数据仓库是专门用于企业决策分析的。
支持SQL语言,hive架构在Hadoop之上,所以hive会将SQL语句转化为mapreduce作业
-
Hadoop Pig
pig是一个轻量级的编程语言
-
Hadoop Oozie
Hadoop上的工作流管理器,
-
Hadoop zookeeper
提供分布式协调一致性服务,比如:分布式管理锁,集群管理等
-
Hadoop Hbase
列族数据库,Hbase支持随机读写和实时应用
-
Flume
一个高可用的,高可靠的,分布式海量日志采集,聚合和传输的系统,所以Flume是专门帮你收集日志的。
-
sqoop
用于在Hadoop与传统数据库之间进行数据传输,sqoop可以进行关系数据库到 HDFS, Hbase,Hive互导。利用sqoop可以将关系数据库中的数据都导入Hadoop平台上去。同理也可以将Hadoop上的数据导入关系数据库中。