hdfs体系结构与读写过程

来源:互联网 发布:福禄克435下载数据 编辑:程序博客网 时间:2024/06/06 05:47

1.Namenode

  • 管理文件系统的命名空间
  • 记录每个文件数据块在各个Datanode上的位置和副本信息
  • 协调客户端对文件的访问
  • 记录命名空间内的改动或空间本身属性的改动
  • Namenode使用事务日志记录HDFS元数据的变化。使用影响文件存储文件系统的命名空间,包括文件映射,文件属性等

2.Datanode

  • 负责所在五里界点的存储管理
  • 一次写入,多次读取(不修改)
  • 文件有数据块组成,典型的块大小是64MB
  • 数据块尽量散布到各个几点

读取数据流程

  • 客户端要访问HDFS中的一个文件
  • 首先从namenode获得组成这个文件的数据块位置列表
  • 根据列表知道存储数块的datanode
  • 访问datanode获取数据
  • Namenode并不参与数据实际传输

写数据流程

  • 客户端提出写数据请求
  • namenode将写入的数据进行切分成若干的数据块,再将每个数据块复制到三个地方
  • namenode再根据距离为为一个数据块对应的存储数据进行排序,再讲排好序户的规则告诉datanode
  • datanode会根据排好的顺序将每个数据块进行存储,等存储完毕之后,datanode会向namenode发送完成请求,namenode再告知客户端
  • 剩下的数据则按照这个规则依次写入
0 0