栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

HDFS理论基础

HDFS理论基础

1.存储模型

2.架构设计

3.角色功能

PS:角色对应的就是一个或者多个进程

4.元数据持久化

5.安全模式

HDFS合并EditLog与FsImage的过程:

  1. HDFS启动前会进行格式化,生成一个空的FsImage,假设HDFS集群在8:00时进行第一次初始化启动
  2. 8:00 - 9:00 期间,对HDFS的操作记录在EditLog中,NameNode内存中存储了相关的元数据,但是此时硬盘中的FsImage还是空的
  3. 假设9点到达checkpoint,Secondary NameNode拉取NameNode中的FsImage(此时为空),以及EditLog(记录了8:00 - 9:00的操作日志),NameNode同时会生成一个新的EditLog,记录9:00以后的操作日志
  4. Secondary NameNode将拉取到的EditLog合并到FsImage中,合并完成之后,将其推送到NameNode
  5. NameNode使用新的FsImage替换之前旧的FsImage,将NewEditLog(记录9:00的操作日志)替换之前的EditLog(记录的是8:00 - 9:00的操作日志)。

6.副本放置策略

7.读写流程

下图描述了在某一时间点,客户端往HDFS上传一个块的示意图:

  1. 客户端与NameNode交互,告诉NameNode需要上传文件
  2. NameNode触发副本放置策略,告诉客户端块的副本放到哪些节点,节点是有序的
  3. 客户端与第一个节点创建TCP连接,并告诉这个节点,后面的节点是哪些
  4. 第一个节点与第二个结点建立连接,并告诉第二个节点,后面的节点是哪些
  5. 同理,这些副本放置节点会串联起来
  6. 客户端将块分为多个小块,依次将小块传输给第一个节点
  7. 客户端将第一个小块往第二个节点传输完成后,就开始向其传输第二个小块,与此同时,第一个节点就会向第二个节点传输第一个小块
  8. 类推下去,与流水线类似,客户端只需要往第一个节点传输数据,就能完成将数据传输到多个节点的功能。且耗费的时间比客户端分别向多个节点传输花费的时间更少。这里,流水线传输就类似于一个变种的并行传输。

HDFS读流程:

 

参考链接:

清华大牛精讲Hadoop全套教程_从入门到精通(HDFS集群/MapReduce底层原理、源码~~)_哔哩哔哩_bilibili

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/674215.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号