Hadoop大数据开发基础
浅小兮Hadoop大数据开发基础
题外话:关于Hadoop的知识点非常多,总结都不一定全面,有可能需要分非常多的部分组成一大类还要延生到Hive相关的知识点还有数据库等等,需要用到的工具部署起来也是非常复杂的,此篇仅供本人复习使用,如有需要你也可以参考我的知识点----浅小兮
Hadoop系列导航
Hadoop基础介绍→当前页面
2.Hadoop环境搭建
3.待更新中…………
1. Hadoop 生态系统
Hadoop 生态系统包含多个组件,每个组件都有其特定的功能。以下是一些主要的组件:
-
Hadoop Distributed File System (HDFS):Hadoop 的文件系统,用于存储大数据集。
-
YARN (Yet Another Resource Negotiator):资源管理器,负责集群中的资源分配和管理。
-
Hadoop MapReduce:分布式计算框架,用于处理大规模数据集的并行计算。
-
Hadoop Common:提供 Hadoop 生态系统中其他组件所共用的库和工具。
-
Hadoop 生态系统中的其他组件:如 Hive (数据仓库)、HBase (分布式存储)、ZooKeeper (分布式协调服务) 等。
2. HDFS (Hadoop Distributed File System)
HDFS 是 Hadoop 的文件系统,它将数据分成多个块(默认大小为 128MB),并存储在不同的服务器上。HDFS 提供了高吞吐量和容错能力,适合存储大量数据。
3. YARN (Yet Another Resource Negotiator)
YARN 是 Hadoop 的资源管理器,它负责集群中的资源分配和管理。YARN 允许用户运行多种类型的分布式应用程序,而不仅仅是 MapReduce 应用程序。
4. Hadoop MapReduce
MapReduce 是 Hadoop 的分布式计算框架,用于处理大规模数据集的并行计算。MapReduce 包含两个主要阶段:Map 阶段和 Reduce 阶段。
-
Map 阶段:对输入数据进行分割,并将其分发给集群中的多个节点进行处理。每个节点处理一部分数据,并生成中间结果。
-
Reduce 阶段:将 Map 阶段生成的中间结果合并,生成最终结果。
5. Hadoop 生态系统中的其他组件
-
Hive:是一个数据仓库工具,用于数据提取、转换和加载(ETL)。它允许用户使用类似 SQL 的查询语言(HQL)来处理大规模数据集。
-
HBase:是一个分布式的、可扩展的、面向列的数据库,用于存储大量结构化和半结构化数据。
-
ZooKeeper:是一个分布式协调服务,用于维护配置信息、命名服务、分布式同步和提供其他一些基础服务。
6.Hadoop特点
-
可扩展性:Hadoop 设计为可扩展的,允许用户根据需要添加更多的节点来处理更多的数据。它支持从几个节点到数千个节点的扩展。
-
容错性:Hadoop 设计时考虑了容错性,当集群中的某个节点出现故障时,Hadoop 能够自动重新分配任务到其他健康的节点上,确保数据处理不会中断。
-
高吞吐量:Hadoop 能够并行处理数据,因此在处理大量数据时具有很高的吞吐量。
-
低成本:Hadoop 可以使用廉价的服务器来构建集群,这使得它成为处理大数据集的低成本解决方案。
-
灵活性:Hadoop 支持多种数据格式,包括文本、结构化数据、半结构化数据和非结构化数据。
-
可移植性:Hadoop 是开源的,可以在多种操作系统上运行,包括 Linux、Windows 和 macOS。