大数据技术-HDFS概述与原理分析
发布时间:2022-11-01 11:03:51 所属栏目:大数据 来源:
导读: HDFS源于Google的GFS,算是GFS的一个克隆版本,HDFS全称Hadoop Distributed File System,是Hadoop生态中的基础组件。
HDFS的优点
1)高容错性
2)适合大数据批处理
3)流式数据
HDFS的优点
1)高容错性
2)适合大数据批处理
3)流式数据
|
HDFS源于Google的GFS,算是GFS的一个克隆版本,HDFS全称Hadoop Distributed File System,是Hadoop生态中的基础组件。 HDFS的优点 1)高容错性 2)适合大数据批处理 3)流式数据访问,一次写入多次读取 4)构建成本低,安全可靠 HDFS的缺点 1)不适合低延迟数据访问 2)不适合存储小文件 3)不适合并发写入 4)不能随机修改 HDFS中的核心概念 1)NameNode-Active HDFS的master节点,负责管理文件系统的名称空间、存储文件的元信息、管理Slave节点、维护副本策略、处理客户端请求; 2)NameNode-StandBy Master节点的备用节点,从Master节点同步编辑日志,当Master节点不可用时,升级为NameNode-Master节点; *NameNode中保存两类数据:编辑日志和元信息,NameNode会定期将这些数据持久化。 3)DataNode DataNode是HDFS中实际存储数据的节点,它会向Master心跳汇报自身的状态信息,执行客户端的读写请求。 4)数据块 数据块是HDFS中的存储单元,文件被写入HDFS时,会被切分成多个Block块,默认的块大小是128MB,每个数据块会有三个副本;数据块设置成128MB首先是为了最小化磁盘寻址时间,其次,也不适宜设置的太大,由于MapReduce的Map节点通常是处理一个Block块,如果Block过大,那么Map的执行时间就会大大增加; HDFS的高可用原理 在Hadoop1.x中,由于NameNode存在单点故障,极大的限制的Hadoop的发展和应用场景,在2.X版本中,Hadoop引入了一些列的HA机制来保证集群的可用性,主要包括: 1)QJM日志文件共享系统 在1.X版本中,系统元数据和编辑日志都存储在NameNode的内存中,SecondaryNameNode定期从NameNode中同步,但如果NameNode挂掉,需要手动启动SecondaryNameNode为NameNode,这样势必会造成数据丢失,在2.X中,通过一个QJM来共享集群元数据和编辑日志,当客户端发起写请求时: 2)主备切换 主备切换功能由两个组件组成,一个是DFSZKFailoverController切换控制器和HeathMonitor组成,DFSZKFailoverController负责发起选举,HealthMonitor负责监控NameNode状态,并与DFSZKFailoverController通信报告NameNode健康情况, 3)主备切换隔离机制 有时,由于JVM的FullGC或网络原因,会导致Master节点假死,从而造成集群脑裂,这会严重影响数据的一致性和服务的可用性,为了解决这个问题大数据存储系统,HDFS引入了主备切换的隔离机制,实现这种隔离机制的策略有两种: Yarn的架构和基本原理 Yarn的全称是Yet Another Resourc Negotiator,是Hadoop2.0引入的,主要功能如下: 架构 Yarn同样采用Master-Slave模块,利用Zookeeper实现Master(ResourceManager)的高可用。 核心组件: ResourceManager ResourceManager NodeManager ApplicationMaster Container (编辑:PHP编程网 - 襄阳站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐



浙公网安备 33038102330434号