《Hadoop海量数据处理:技术详解与项目实战(第2版)》一2.2 Hadoop架构

简介:

本节书摘来异步社区《Hadoop海量数据处理:技术详解与项目实战(第2版)》一书中的第2章,第2.2节,作者: 范东来 责编: 杨海玲,更多章节内容可以访问云栖社区“异步社区”公众号查看。

2.2 Hadoop架构

Hadoop主要由两部分构成:分布式文件系统HDFS和统一资源管理和调度系统YARN。正如前文所述,分布式文件系统主要是用于海量数据的存储,而YARN主要是管理集群的计算资源并根据计算框架的需求进行调度。本节主要是为了让读者对Hadoop的架构有个比较清晰的了解,为后面的安装和学习打下基础。

2.2.1 Hadoop HDFS架构

构成HDFS集群的主要是两类节点,并以主从(master/slave)模式,或者说是管理者-工作者的模式运行,即一个NameNode(管理者)和多个DataNode(工作者)。还有一种节点叫SecondaryNameNode,作为NameNode镜像数据备份。如图2-2所示,图中的所有物理节点构成了一个HDFS集群,而NameNode、DataNode和SecondaryNameNode其实是各自节点上运行的守护进程。所以NameNode既是守护进程,也可以指运行NameNode守护进程的节点。客户端代表用户与整个文件系统交互的客户端。


2

表2-3列出了HDFS中守护进程的数目及其作用。


b3

2.2.2 YARN架构

构成YARN集群的是两类节点:ResourceManager和NodeManager。同HDFS类似,YARN也采用主从(master/slave)架构,如图2-3所示。


3

ResourceManager和NodeManager也是两种守护进程,运行在各自的节点上。表2-4列出了ResourceManager和NodeManager守护进程的数目和作用。


b4

2.2.3 Hadoop架构

从上面的介绍读者可以知道,HDFS集群和YARN集群其实由一些守护进程组成,而所有这些守护进程和运行它们的节点就构成了Hadoop集群。如图2-4所示,这个集群的NameNode进程和ResourceManager进程在一个节点上运行,而DataNode和NodeManager在同一个节点上运行着。

值得一提的是,DataNode和NodeManager需要配对部署在同一个节点,但NameNode和ResourceManager却并不一定部署在同一个节点。在生产环境中,为了性能和稳定性考虑,强烈建议NameNode和ResourceManager分开部署。如图2-5所示(为了突出重点,这里省略了SecondaryNameNode和客户端,实际上是存在的),这样也是一个标准的Hadoop集群。


5

相关文章
|
8天前
|
存储 分布式计算 Hadoop
大数据处理架构Hadoop
【4月更文挑战第10天】Hadoop是开源的分布式计算框架,核心包括MapReduce和HDFS,用于海量数据的存储和计算。具备高可靠性、高扩展性、高效率和低成本优势,但存在低延迟访问、小文件存储和多用户写入等问题。运行模式有单机、伪分布式和分布式。NameNode管理文件系统,DataNode存储数据并处理请求。Hadoop为大数据处理提供高效可靠的解决方案。
30 2
|
28天前
|
设计模式 前端开发 测试技术
Flutter 项目架构技术指南
探讨Flutter项目代码组织架构的关键方面和建议。了解设计原则SOLID、Clean Architecture,以及架构模式MVC、MVP、MVVM,如何有机结合使用,打造优秀的应用架构。
Flutter 项目架构技术指南
|
30天前
|
算法 数据挖掘 调度
隐语实训营-第3讲:详解隐私计算框架的架构和技术要点
主要介绍隐语的隐私计算架构,并对每个模块进行拆解、分析,以期望不同使用者找到适合自己的模块,快速入手。
46 4
|
1月前
|
Kubernetes 开发者 Docker
基于容器技术的微服务架构
基于容器技术的微服务架构
32 0
|
1月前
|
运维 网络协议 安全
长连接网关技术专题(十):百度基于Go的千万级统一长连接服务架构实践
本文将介绍百度基于golang实现的统一长连接服务,从统一长连接功能实现和性能优化等角度,描述了其在设计、开发和维护过程中面临的问题和挑战,并重点介绍了解决相关问题和挑战的方案和实践经验。
74 1
|
29天前
|
分布式计算 算法 调度
课3-详解隐私计算框架的架构和技术要点
隐语架构涵盖产品、算法、计算、资源和硬件五层,旨在实现互联互通和跨域管控。产品层包括SecretPad等,简化用户和集成商体验。算法层涉及PSI/PIR、SCQL和联邦学习,提供隐私保护的数据分析和学习。计算层如RayFed、SPU、HEU等,支持分布式计算和密态处理。资源层的KUSCIA用于跨机构任务编排,硬件层涉及FPGA等加速器。互联互通支持黑盒和白盒模式,确保不同平台协作。跨域管控则强调数据流转控制,保护数据权益。
|
8天前
|
分布式计算 Hadoop 大数据
大数据技术与Python:结合Spark和Hadoop进行分布式计算
【4月更文挑战第12天】本文介绍了大数据技术及其4V特性,阐述了Hadoop和Spark在大数据处理中的作用。Hadoop提供分布式文件系统和MapReduce,Spark则为内存计算提供快速处理能力。通过Python结合Spark和Hadoop,可在分布式环境中进行数据处理和分析。文章详细讲解了如何配置Python环境、安装Spark和Hadoop,以及使用Python编写和提交代码到集群进行计算。掌握这些技能有助于应对大数据挑战。
|
21天前
|
设计模式 安全 Java
【分布式技术专题】「Tomcat技术专题」 探索Tomcat技术架构设计模式的奥秘(Server和Service组件原理分析)
【分布式技术专题】「Tomcat技术专题」 探索Tomcat技术架构设计模式的奥秘(Server和Service组件原理分析)
24 0
|
30天前
|
机器学习/深度学习 算法 安全
隐私计算训练营第三讲-详解隐私计算的架构和技术要点
SecretFlow 是一个隐私保护的统一框架,用于数据分析和机器学习,支持MPC、HE、TEE等隐私计算技术。它提供设备抽象、计算图表示和基于图的ML/DL能力,适应数据水平、垂直和混合分割场景。产品层包括SecretPad(快速体验核心能力)和SecretNote(开发工具)。算法层涉及PSI、PIR、数据分析和联邦学习(水平、垂直、混合)。此外,SecretFlow还有YACL密码库和Kusica任务调度框架,Kusica提供轻量化部署、跨域通信和统一API接口。
39 0
|
21天前
|
NoSQL Java Redis
【分布式技术专题】「分布式技术架构」手把手教你如何开发一个属于自己的分布式锁的功能组件(二)
【分布式技术专题】「分布式技术架构」手把手教你如何开发一个属于自己的分布式锁的功能组件
15 0