NameNode管理元数据的机制

当NameNode收到更新元数据请求

首先更新内存中元数据信息

记录操作日志 edits

定期合并(checkpoint) edits 到 fileimage

客户端向HDFS写数据的流程

HDFS集群分为两大角色:

NameNode DataNode (Secondary NameNode)

NameNode负责管理集群的元数据

DataNode负责管理用户的文件数据块

文件会按照固定的大小(blocksize)切成若干块后分布式存储在若干台datanode上

每一个文件块可以有多个副本,并存放在不同的datanode上

HDFS读数据流程

  1. 客户端向NameNode请求下载文件A
  2. NameNode从元数据中读取A文件所在位置,副本数量 返回给客户端
  3. 客户端向最近DataNode请求下载block1 建立下载通道
  4. 开始传输数据
  5. 传输完成后客户端找第二个block数据所在DataNode中的位置
  6. 最后所有块在客户端合并

OOAD与UML

OOAD(Object Oriented Analysis and Design) 面向对象的分析与设计

OOA 分析阶段

  • 建立针对业务问题域的清晰视图

  • 列出系统必须要完成的核心人物

  • 针对问题域建立公共词汇表

  • 列出针对此问题域的最佳解决方案

    核心问题:What to do ? 要做什么?