HDFS 原理与应用 | 青训营笔记

47 阅读1分钟

这是我参与「第四届青训营 」笔记创作活动的的第6天

课程内容

01 HDFS基本介绍

1.3 HDFS介绍

1.2 单机文件系统

windows和linux的文件系统

1.3 分布式文件系统

  • 大容量
  • 高可靠
  • 低成本

1.4 分布式存储系统

1.5 HDFS功能特性

1.6 实验

研一上学期的时候做过哈哈

02 架构原理

2.1 HDFS组件

  • Namenode是最复杂的部分
  • 所有的数据都传到datanode,然后存到硬盘
  • 每个数据库有三个副本

2.2 Client写流程

2.3 Clinet读流程

2.4 元数据节点NameNode

2.5 数据节点DataNode

03 关键设计

3.1 NameNode目录树维护

  • EditLog类似数据库的日志UndoLog和dolog
  • 用在高可用的实现:怎么实现EditLog的共享?

3.2 NameNode数据放置

  • 方式2更加合理,如果一个结点挂掉,其他结点依旧可用。

3.3 DataNode

  • 一个块两个内容:data和meta_data(json数据)

3.4 HDFS写异常处理:Lease Recovery

3.4.1 锁异常

  • 比较块的三个副本,按照最短长度的副本恢复

3.4.2 pipeline异常

3.5 Client读异常处理

3.6 旁路系统

  • 对系统的问题识别出来,积累起来,异步的去解决它。

3.7 控制面建设

3.8 小结