Hadoop – 简介

Hadoop – 简介


Hadoop 是一个用 Java 编写的 Apache 开源框架,它允许使用简单的编程模型跨计算机集群分布式处理大型数据集。Hadoop 框架应用程序在提供跨计算机集群的分布式存储计算的环境中工作Hadoop 旨在从单个服务器扩展到数千台机器,每台机器都提供本地计算和存储。

Hadoop架构

Hadoop 的核心有两个主要层,即 –

  • 处理/计算层(MapReduce),以及
  • 存储层(Hadoop 分布式文件系统)。

Hadoop架构

映射简化

MapReduce 是一种并行编程模型,用于编写由 Google 设计的分布式应用程序,用于在商用硬件的大型集群(数千个节点)上以可靠、容错的方式高效处理大量数据(多 TB 数据集)。MapReduce 程序在 Hadoop 上运行,Hadoop 是一个 Apache 开源框架。

Hadoop分布式文件系统

Hadoop 分布式文件系统 (HDFS) 基于 Google 文件系统 (GFS) 并提供了一个分布式文件系统,该系统旨在运行在商品硬件上。它与现有的分布式文件系统有很多相似之处。但是,与其他分布式文件系统的区别是显着的。它具有高度容错性,旨在部署在低成本硬件上。它提供对应用程序数据的高吞吐量访问,适用于具有大型数据集的应用程序。

除了上述两个核心组件外,Hadoop 框架还包括以下两个模块 –

  • Hadoop Common – 这些是其他 Hadoop 模块所需的 Java 库和实用程序。

  • Hadoop YARN – 这是一个用于作业调度和集群资源管理的框架。

Hadoop 是如何工作的?

构建具有处理大规模处理的繁重配置的大型服务器是相当昂贵的,但作为替代方案,您可以将许多具有单 CPU 的商用计算机捆绑在一起,作为一个单一功能的分布式系统,实际上,集群机器可以读取数据集并提供更高的吞吐量。此外,它比一台高端服务器便宜。所以这是使用 Hadoop 背后的第一个激励因素,它在集群和低成本机器上运行。

Hadoop 跨计算机集群运行代码。此过程包括 Hadoop 执行的以下核心任务 –

  • 数据最初分为目录和文件。文件被分为统一大小的 128M 和 64M(最好是 128M)的块。

  • 然后将这些文件分布在各个集群节点上以供进一步处理。

  • HDFS 位于本地文件系统之上,负责监督处理过程。

  • 复制块以处理硬件故障。

  • 检查代码是否成功执行。

  • 执行在 map 和 reduce 阶段之间发生的排序。

  • 将排序后的数据发送到某台计算机。

  • 为每个作业编写调试日志。

Hadoop的优势

  • Hadoop 框架允许用户快速编写和测试分布式系统。它是高效的,它在机器之间自动分配数据和工作,进而利用 CPU 内核的底层并行性。

  • Hadoop 不依赖于硬件来提供容错和高可用性 (FTHA),而是 Hadoop 库本身旨在检测和处理应用层的故障。

  • 服务器可以动态地从集群中添加或删除,Hadoop 继续运行而不会中断。

  • Hadoop 的另一大优势是,除了开源之外,它还兼容所有平台,因为它是基于 Java 的。

觉得文章有用?

点个广告表达一下你的爱意吧 !😁