本文目录
- Hadoop概述
- 什么是Hadoop?
- Hadoop生态圈
- 1、概述
- 2、HDFS
- 3、MapReduce
- 4、YARN
- 5、HBase
- 6、ZooKeeper
- 7、Hive
- 8、Pig
- 9、Sqoop
- 10、Flume
- 11、Oozie
- 12、Mahout
Hadoop概述
什么是Hadoop?
Hadoop是Apache基金会旗下的一个分布式系统基础架构。
主要包括分布式文件系统HDFS、分布式计算系统MapReduce和分布式资源管理系统YARN。
Hadoop生态圈
1、概述
狭义的Hadoop:是一个适合大数据分布式存储和分布式计算的平台,包括HDFS、MapReduce和YARN。
广义的Hadoop:指以Hadoop为基础的生态圈,是一个很庞大的体系,Hadoop只是其中最重要、最基础的一部分;生态圈中的每个子系统只负责解决某一个特定的问题域(甚至可能更窄),它并不是一个全能系统,而是多个小而精的系统。Hadoop生态圈的主要构成如下图:
2、HDFS
HDFS:是一个分布式文件系统。
3、MapReduce
MapReduce是一个分布式、并行处理的编程模型。
4、YARN
是一个分布式资源管理系统,主要负责整个系统的资源管理和调度。
5、HBase
HBase是一个建立在HDFS之上的面向列的数据库,用于快速读/写大量数据。HBase使用ZooKeeper进行管理,以确保所有组件都能正常运行。
6、ZooKeeper
ZooKeeper是分布式协调服务的框架。
7、Hive
Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供SQL查询功能,可以将SQL语句转换为MapReduce任务运行。
Hive的执行原理就是:将SQL语句翻译为MapReduce作业,并提交到Hadoop集群上运行。
8、Pig
Pig是一个用于并行计算的高级数据流语言和执行框架,有一套和SQL类似的执行语句,处理的对象时HDFS上的文件。Pig的数据处理语言采取数据流方式,一步一步地进行处理。
9、Sqoop
Sqoop是一个用于在关系数据库、数据仓库(Hive)和Hadoop之间转移数据的框架。可以借助Sqoop完成关系型数据库到HDFS、Hive、HBase等Hadoop生态圈中框架的数据导入导出操作,其底层也是通过MapReduce作业来实现的。
10、Flume
Flume是由Cloudera提供的一个分布式、高可靠、高可用的服务,是用于分布式的海量日志的高效收集、聚合、移动/传输系统的框架;Flume是一个基于流式数据的非常简单的(只需要一个配置文件)、灵活的、健壮的、容错的架构。
11、Oozie
Oozie是一个工作流调度引擎,在Oozie上可以执行MapReduce、Hive、Spark等不同类型的单一或者具有依赖性(后一个作业的执行依赖于前一个或者多个作业的成功执行)的作业。类似的在大数据中使用的工作流调度引擎还有Azkaban。
12、Mahout
Mahout是一个机器学习和数据挖掘库,它提供的MapReduce包含很多实现,包括聚类算法、回归测试、统计建模。
ps:制作不易,请留下你的小心心,望多多支持,后续更新中。。。