Hadoop简介

Hadoop简介

Apache Hadoop 是一款支持数据密集型分布式应用并以 Apache 2.0 许可协议发布的开源软件框架。

Apache Hadoop 软件库是一个允许使用简单编程模型跨计算机集群分布式处理大型数据集的框架。它被设计成从单个服务器扩展到数千台机器,每个机器提供本地计算和存储,而不是依赖于硬件来提供高可用性。库本身被设计成检测和处理应用层的故障,因此在计算机群集的顶部提供高度可用的服务,每个计算机都不容易发生故障。

Hadoop 框架透明地为应用提供可靠性和数据移动。它实现了名为 MapReduce 的编程范式:应用程序被分割成许多小部分,而每个部分都能在集群中的任意节点上执行或重新执行。此外,Hadoop 还提供了分布式文件系统,用以存储所有计算节点的数据,这为整个集群带来了非常高的带宽。MapReduce 和分布式文件系统的设计,使得整个框架能够自动处理节点故障。它使应用程序能够连接成千上万台独立计算的电脑并处理 PB 级的数据。现在普遍认为整个 Apache Hadoop “平台”包括Hadoop内核、MapReduce、Hadoop分布式文件系统(HDFS)以及一些相关项目,有 Apache Hive 和 Apache HBase 等等。

Hadoop的框架最核心的设计就是:HDFS和MapReduce。 HDFS为海量的数据提供了存储,则MapReduce为海量的数据提供了计算。

核心概念

Hadoop 项目主要包含了以下四个模块:

  • Hadoop 通用模块(Hadoop Common): 为其他 Hadoop 模块提供支持的公共实用程序。
  • Hadoop 分布式文件系统(HDFS, Hadoop Distributed File System):提供对应用程序数据的高吞吐量访问的分布式文件系统。
  • Hadoop YARN: 任务调度和集群资源管理框架。
  • Hadoop MapReduce: 基于 YARN 的大规模数据集并行计算框架。

对于初次学习 Hadoop 的用户而言,应重点关注 HDFS 和 MapReduce。作为一个分布式计算框架,HDFS 承载了该框架对于数据的存储需求,而 MapReduce 满足了该框架对于数据的计算需求。

下图是 Hadoop 集群的基本架构。

本文摘自实验楼:https://www.shiyanlou.com

发表评论

后才能评论