【愚公系列】2024年02月 大数据教学课程 019-Hadoop的体系

🏆 作者简介,愚公搬代码

🏆《头衔》:华为云特约编辑,华为云云享专家,华为开发者专家,华为产品云测专家,CSDN博客专家,CSDN商业化专家,阿里云专家博主,阿里云签约作者,腾讯云优秀博主,腾讯云内容共创官,掘金优秀博主,51CTO博客专家等。

🏆《近期荣誉》:2022年度博客之星TOP2,2023年度博客之星TOP2,2022年华为云十佳博主,2023年华为云十佳博主等。

🏆《博客内容》:.NET、Java、Python、Go、Node、前端、IOS、Android、鸿蒙、Linux、物联网、网络安全、大数据、人工智能、U3D游戏、小程序等相关领域知识。

🏆🎉欢迎 👍点赞✍评论⭐收藏

文章目录

  • 🚀前言
  • 🚀一、Hadoop的体系
    • 🔎1.Hadoop的介绍
    • 🔎2.hadoop的历史版本介绍
    • 🔎3.hadoop三大公司发型版本介绍
      • 🦋3.1 免费开源版本apache
      • 🦋3.2 免费开源版本hortonWorks
      • 🦋3.3 软件收费版本ClouderaManager
      • 🔎4.hadoop的架构模型(1.x,2.x的各种架构模型介绍)
        • 🦋4.1 1.x的版本架构模型介绍
        • 🦋4.2 2.x的版本架构模型介绍
          • ☀️4.2.1 NameNode与ResourceManager单节点架构模型
          • ☀️4.2.2 NameNode单节点与ResourceManager高可用架构模型
          • ☀️4.2.3 NameNode高可用与ResourceManager单节点架构模型
          • ☀️4.2.4 NameNode与ResourceManager高可用架构模型
          • 🚀感谢:给读者的一封信

            🚀前言

            Hadoop是一个开源的分布式计算框架,其体系包括以下几个组成部分:

            Hadoop模块功能
            Hadoop Common提供Hadoop的基本功能,包括分布式文件系统(HDFS)、分布式数据处理、分布式调度和集群管理等
            Hadoop Distributed File System(HDFS)用于存储大量数据,并提供高容错性和高吞吐量
            Hadoop YARN(Yet Another Resource Negotiator)负责集群资源的调度和分配,将Hadoop从一个简单的批处理系统转变为一个通用的大数据处理平台,支持不同的计算模型,如MapReduce、Spark和Flink等
            Hadoop MapReduce并行处理大规模数据集,通过将输入数据分成多个小块,然后分发给集群中的多个计算节点进行处理,并将结果汇总输出
            Hadoop Ecosystem由一系列工具和应用组成,用于扩展和增强Hadoop的功能,包括Hive、HBase、Spark、Pig、Sqoop、Flume、Kafka等

            Hadoop体系是由Hadoop Common、HDFS、YARN、MapReduce和一系列的生态系统工具组成的,用于存储、处理和分析大规模数据集。它提供了高可靠性、高可扩展性和高性能的分布式计算环境。

            🚀一、Hadoop的体系

            🔎1.Hadoop的介绍

            Hadoop是一个开源的分布式计算框架,它可以处理大规模数据集的存储和处理。Hadoop的核心是Hadoop Distributed File System(HDFS)和MapReduce。HDFS是一个可靠的分布式文件系统,它将大规模数据集分成多个数据块,并将这些数据块存储在不同的计算机上的硬盘上。MapReduce是一种编程模型,它将数据处理任务分成多个小的子任务,然后通过多个计算机并行地执行这些子任务,最后将结果合并起来。

            1、狭义上来说,hadoop就是单独指代hadoop这个软件

            HDFS    :分布式文件系统
            MapReduce : 分布式计算系统
            

            2、广义上来说,hadoop指代大数据的一个生态圈,包括很多其他的软件

            🔎2.hadoop的历史版本介绍

            版本发布日期主要功能
            1.x2011年第一个稳定版本,包含HDFS和MapReduce。MapReduce是主要的数据处理框架
            2.x2013年引入YARN(Yet Another Resource Negotiator)作为资源管理器,使得Hadoop可以支持除了MapReduce之外的其他计算框架,如Apache Spark等
            3.x2017年引入了许多新特性和改进,如Hadoop Common中的容器化支持、HDFS中的Erasure Coding和文件快照等功能,以及MapReduce中的性能优化等

            🔎3.hadoop三大公司发型版本介绍

            🦋3.1 免费开源版本apache

            http://hadoop.apache.org/

            优点:拥有全世界的开源贡献者,代码更新迭代版本比较快,

            缺点:版本的升级,版本的维护,版本的兼容性,版本的补丁都可能考虑不太周到

            apache所有软件的下载地址(包括各种历史版本):

            http://archive.apache.org/dist/

            🦋3.2 免费开源版本hortonWorks

            https://hortonworks.com/

            hortonworks主要是雅虎主导Hadoop开发的副总裁,带领二十几个核心成员成立Hortonworks,核心产品软件HDP(ambari),HDF免费开源,并且提供一整套的web管理界面,供我们可以通过web界面管理我们的集群状态,web管理界面软件HDF网址(http://ambari.apache.org/)

            🦋3.3 软件收费版本ClouderaManager

            https://www.cloudera.com/

            cloudera主要是美国一家大数据公司在apache开源hadoop的版本上,通过自己公司内部的各种补丁,实现版本之间的稳定运行,大数据生态圈的各个版本的软件都提供了对应的版本,解决了版本的升级困难,版本兼容性等各种问题

            🔎4.hadoop的架构模型(1.x,2.x的各种架构模型介绍)

            🦋4.1 1.x的版本架构模型介绍

            文件系统核心模块:

            • NameNode:集群中的主节点,负责管理元数据,包括文件的大小、位置和权限等。
            • secondaryNameNode:用于辅助管理Hadoop中的元数据信息。
            • DataNode:集群中的从节点,用于存储各种数据。

              数据计算核心模块:

              • JobTracker:接收用户的计算请求任务,并将任务分配给从节点。
              • TaskTracker:负责执行主节点JobTracker分配的任务。

                🦋4.2 2.x的版本架构模型介绍

                ☀️4.2.1 NameNode与ResourceManager单节点架构模型

                文件系统核心模块:

                • NameNode:集群中的主节点,主要管理集群中的数据。
                • secondaryNameNode:用于辅助管理Hadoop的元数据信息。
                • DataNode:集群中的从节点,用于存储集群中的数据。

                  数据计算核心模块:

                  • ResourceManager:接收用户的计算请求任务,负责集群的资源分配。
                  • NodeManager:执行主节点APPmaster分配的任务。
                    ☀️4.2.2 NameNode单节点与ResourceManager高可用架构模型

                    文件系统核心模块:

                    • NameNode:集群中的主节点,用于管理集群中的数据。
                    • secondaryNameNode:辅助管理Hadoop元数据信息的节点。
                    • DataNode:集群中的从节点,用于存储集群中的数据。

                      数据计算核心模块:

                      • ResourceManager:接收用户的计算请求任务,负责集群资源分配和计算任务划分。使用ZooKeeper实现ResourceManager的高可用。
                      • NodeManager:执行由主节点ResourceManager分配的任务。
                        ☀️4.2.3 NameNode高可用与ResourceManager单节点架构模型

                        文件系统核心模块包括:

                        • NameNode:主节点,负责管理集群的数据,可以有两个实例以实现高可用性。
                        • DataNode:从节点,负责存储集群的数据。
                        • JournalNode:管理文件系统的元数据信息。

                          数据计算核心模块包括:

                          • ResourceManager:接收用户的计算请求任务,并进行资源分配和任务划分。
                          • NodeManager:执行由主节点ResourceManager分配的任务。
                            ☀️4.2.4 NameNode与ResourceManager高可用架构模型

                            文件系统核心模块:

                            • NameNode:集群中的主节点,管理数据,通常有两个以实现高可用性。
                            • JournalNode:元数据信息管理进程,通常有奇数个。
                            • DataNode:从节点,用于存储数据。

                              数据计算核心模块:

                              • ResourceManager:Yarn平台的主节点,接收各种任务,通常有两个以实现高可用性。
                              • NodeManager:Yarn平台的从节点,处理ResourceManager分配的任务。

                                🚀感谢:给读者的一封信

                                亲爱的读者,

                                我在这篇文章中投入了大量的心血和时间,希望为您提供有价值的内容。这篇文章包含了深入的研究和个人经验,我相信这些信息对您非常有帮助。

                                如果您觉得这篇文章对您有所帮助,我诚恳地请求您考虑赞赏1元钱的支持。这个金额不会对您的财务状况造成负担,但它会对我继续创作高质量的内容产生积极的影响。

                                我之所以写这篇文章,是因为我热爱分享有用的知识和见解。您的支持将帮助我继续这个使命,也鼓励我花更多的时间和精力创作更多有价值的内容。

                                如果您愿意支持我的创作,请扫描下面二维码,您的支持将不胜感激。同时,如果您有任何反馈或建议,也欢迎与我分享。

                                再次感谢您的阅读和支持!

                                最诚挚的问候, “愚公搬代码”