Hadoop 生态系统和组件:综合教程 2022

已发表: 2021-01-04

Hadoop 是用于大数据处理的开源框架。 它是巨大的并且有许多组件。 这些组件中的每一个都执行一组特定的大数据作业。 Hadoop 的大量解决方案使其成为行业主打产品。 如果你想成为一名大数据专家,你必须熟悉它的所有组件。

不过不用担心,因为在本文中,我们将了解所有这些组件:

目录

什么是 Hadoop 核心组件?

Hadoop 核心组件控制其性能,您必须在使用其生态系统的其他部分之前了解它们。 Hadoop 的生态系统非常庞大,并且充满了许多工具。 其核心组件的另一个名称是模块。 主要有以下几种

Hadoop核心组件:

1.HDFS

HDFS 的完整形式是 Hadoop 分布式文件系统。 它是 Hadoop 最关键的组件,因为它与数据存储有关。 HDFS 允许您将数据存储在分布式存储设备的网络中。 它有一套工具,可以让您读取这些存储的数据并进行相应的分析。 HDFS 使您能够执行数据采集,而无需考虑计算机的操作系统。 阅读有关 HDFS 及其架构的更多信息。

由于您无需担心操作系统,因此您可以提高工作效率,因为您不必每次遇到新操作系统时都修改系统。 HDFS 由以下组件组成:

  • 名称节点
  • 数据节点
  • 次要名称节点

名称节点在 HDFS 中也称为“主节点”。 它存储从节点的元数据以跟踪数据存储。 它告诉你什么存储在哪里。 主节点还监控从节点的健康状况。 它也可以将任务分配给数据节点。 数据节点存储数据。 数据节点在 HDFS 中也称为“从”。

从节点响应主节点的健康状态请求,并告知主节点自己的情况。 如果从节点没有响应主节点的健康状态请求,主节点将报告其死亡并将其任务分配给另一个数据节点。

除了名称节点和从节点之外,还有第三个,辅助名称节点。 它是主节点的缓冲区。 当主节点不活动时,它将数据更新到 FinalFS 映像。

2. MapReduce

MapReduce 是 Hadoop 的第二个核心组件,它可以执行 Map 和 Reduce 两个任务。 Mapreduce 是顶级 Hadoop 工具之一,可以让您的大数据之旅变得轻松。 映射是指读取数据库中存在的数据并将其转换为更易于访问和更实用的格式。 映射使系统能够通过改变其形式来使用数据进行分析。 然后是归约,这是一个数学函数。 它将映射数据简化为一组定义的数据,以便更好地进行分析。

它解析键和值对并将它们简化为元组以实现功能。 MapReduce 有助于 Hadoop 中的许多任务,例如数据排序和数据过滤。 它的两个组件协同工作并协助准备数据。 MapReduce 还处理作业的监视和调度。

它充当 Hadoop 生态系统的计算机节点。 MapReduce 主要负责将大数据任务分解为一组小任务。 您可以高效地运行 MapReduce 作业,因为您可以使用各种编程语言。 它允许您使用 Python、C++ 甚至 Java 来编写其应用程序。 它快速且可扩展,这就是为什么它是 Hadoop 生态系统的重要组成部分。

3.纱线

YARN 代表又一个资源谈判者。 它处理 Hadoop 中的资源管理。 资源管理也是一项至关重要的任务。 这就是为什么 YARN 是必不可少的 Hadoop 组件之一。 它监视和管理 Hadoop 中的工作负载。 YARN 具有高度可扩展性和敏捷性。 它为您提供集群利用的高级解决方案,这是另一个显着优势。 了解有关 Hadoop YARN 架构的更多信息。

YARN由多个组件组成; 其中最重要的一项是资源管理器。 资源管理器提供灵活和通用的框架来处理 Hadoop 集群中的资源。 资源管理器的另一个名称是 Master。 节点管理器是 YARN 中的另一个重要组件。

它监控 YARN 中应用管理器和容器的状态。 所有数据处理都在容器中进行,如果容器需要更多资源来执行其数据处理任务,则应用管理器管理此过程,应用管理器向资源管理器请求相同的资源。

4. Hadoop 通用

Apache 在 Hadoop 生态系统中添加了许多库和实用程序,您可以将其与各种模块一起使用。 Hadoop Common 使计算机能够加入 Hadoop 网络,而不会遇到任何操作系统兼容性或硬件问题。 该组件使用 Java 工具让平台将其数据存储在所需的系统中。

它之所以命名为 Hadoop Common,是因为它为系统提供了标准功能。

Hadoop组件根据角色

现在我们已经了解了 Hadoop 的核心组件,让我们开始讨论它的其他部分。 正如我们之前提到的,Hadoop 拥有大量工具,因此我们根据它们在 Hadoop 生态系统中的角色进行了划分。 让我们开始吧:

数据存储

动物园管理员

Zookeeper 帮助您管理 Hadoop 集群的命名约定、配置、同步和其他信息。 它是生态系统的开源集中服务器。

目录

HCatalog 以二进制格式存储数据并处理 Hadoop 中的表管理。 它使用户能够使用存储在 HIVE 中的数据,以便他们可以使用数据处理工具来完成他们的任务。 它允许您基于 Kerberos 执行身份验证,并有助于翻译和解释数据。

高密度文件系统

我们已经讨论过 HDFS。 HDFS 代表 Hadoop 分布式文件系统,用于处理 Hadoop 中的数据存储。 它支持水平和垂直可扩展性。 它具有容错性,并且具有复制因子,可以保留数据副本,以防您由于某些错误而丢失任何数据。

执行引擎

火花

您将在 Hadoop 中使用 Spark 进行微批处理。 它可以执行 ETL 和实时数据流。 它非常敏捷,因为它可以支持 80 个高级操作员。 它是一个集群计算框架。 了解有关 Apache Spark 应用程序的更多信息。

MapReduce

这个独立于语言的模块让您可以将复杂数据转换为可用数据进行分析。 它执行映射和减少数据,因此您可以对其执行各种操作,包括对其进行排序和过滤。 它还允许您执行数据本地处理。

泰兹

Tez 使您能够同时执行多个 MapReduce 任务。 它是一个数据处理框架,可帮助您执行数据处理和批处理。 它可以计划重新配置,并可以帮助您做出有关数据流的有效决策。 它非常适合资源管理。

数据库管理

黑斑羚

您将在 Hadoop 集群中使用 Impala。 它可以加入 Hive 的元存储并与之共享所需的信息。 SQL接口简单易学,大数据查询不费吹灰之力。

蜂巢

这个 Hadoop 组件的开发者是 Facebook。 它使用 HiveQL,它与 SQL 非常相似,可让您执行数据分析、汇总、查询。 通过索引,Hive 使数据查询的任务更快。

HBase

HBase 使用 HDFS 来存储数据。 这是一个以列为中心的数据库。 它允许 NoSQL 数据库创建可能包含数十万(甚至数百万)列和行的巨大表。 如果您需要对数据集进行读取或写入访问,则应使用 HBase。 Facebook 使用 HBase 运行其消息平台。

阿帕奇钻

Apache Drill 允许您组合多个数据集。 它可以支持各种 NoSQL 数据库,这就是它非常有用的原因。 它具有很高的可扩展性,可以轻松帮助众多用户。 它使您可以轻松执行所有类似 SQL 的分析任务。 它还具有身份验证解决方案,用于维护系统内的端到端安全性。

抽象

Apache Sqoop

您可以使用 Apache Sqoop 将数据从外部源导入 Hadoop 的数据存储,例如 HDFS 或 HBase。 您也可以使用它将数据从 Hadoop 的数据存储导出到外部数据存储。 Sqoop 并行传输数据的能力减少了资源的过度负载,让您可以高效地导入或导出数据。 您也可以使用 Sqoop 来复制数据。

阿帕奇猪

由 Yahoo 开发的 Apache pig 可帮助您分析大型数据集。 它使用其语言 Pig Latin 来顺利高效地执行所需的任务。 如果您需要处理庞大的数据集,您可以并行化 Pig 程序的结构,这使得 Pig 成为数据分析的出色解决方案。 利用我们的 apache pig 教程了解更多信息。

数据流

水槽

Flume 可让您收集大量数据。 它是一种数据收集解决方案,将收集到的数据发送到 HDFS。 它包含三个部分,分别是通道、源和接收器。 Flume 有运行数据流的代理。 此流中存在的数据称为事件。 Twitter 使用 Flume 流式传输其推文。

卡夫卡

Apache Kafka 是一种持久、快速且可扩展的分布式公共消息传递解决方案。 LinkedIn 是这个强大工具的开发者。 它在主题内维护大量消息。 许多企业使用 Kafka 进行数据流传输。 MailChimp、Airbnb、Spotify 和 FourSquare 是这个强大工具的一些杰出用户。

了解更多 – Hadoop 组件

在本指南中,我们尝试简要介绍每个 Hadoop 组件,以使您彻底熟悉它。 如果您想了解有关 Hadoop 组件及其架构的更多信息,那么我们建议您访问我们的博客,该博客充满了有用的数据科学文章。

如果您有兴趣了解有关大数据的更多信息,请查看我们的 PG 大数据软件开发专业文凭课程,该课程专为在职专业人士设计,提供 7 多个案例研究和项目,涵盖 14 种编程语言和工具,实用的动手操作研讨会,超过 400 小时的严格学习和顶级公司的就业帮助。

从世界顶级大学在线学习软件开发课程获得行政 PG 课程、高级证书课程或硕士课程,以加快您的职业生涯。

掌握未来的技术 - 大数据

7 案例研究和项目。 顶级公司的工作协助。 敬业的学生导师。
IIIT Bangalore 大数据高级证书课程