码迷,mamicode.com
首页 > 其他好文 > 详细

hadoop学习---hdfs

时间:2014-11-29 11:48:00      阅读:140      评论:0      收藏:0      [点我收藏+]

标签:os   sp   文件   bs   ad   时间   工作   管理   nbsp   

hdfs默认基本存储单元为64mb,hdfs的块比磁盘的块大得多,是为了减少寻址开销。如块大小是100mb,寻址时间在10ms,传输速率是100mb/s,则寻址时间是传输时间的1%

hdfs的三个重要角色:client,datanode,namenode

namenode相当于hdfs中的管理者,管理文件系统的命名空间。它维护着这个文件系统树以及树内所有的文件和索引目录。它会存储文件系统的metadata在内存中。

datdanode相当于hdfs中的工作者,是文件存储的基本单元。周期性地向namenode报告它所存储的block的列表

client就是获取hdfs文件的应用程序,通过与namenode、datanode交互来访问整个文件系统,client提供一个类似posix(可移植操作系统界面)的文件系统接口,因此用户在编程时不需要知道namenode、datanode及其功能。

(1)文件写入

  • client向namenode发起写文件的请求
  • namenode根据文件大小和文件块配置请看,返回给client它所管理的部分datanode的信息
  • client将文件划分为多个block,根据datanode的地址信息,按顺序写入到每个datanode中

(2)文件读取

  • client向namenode发起读文件请求
  • namenode返回存储该文件的datanode的信息
  • client读取文件

(3)block复制

  1. namenode发现部分文件的block不符合最小复制数或者部分datanode失效
  2. 通知datanode相互复制block
  3. datanode开始相互复制

 

hadoop学习---hdfs

标签:os   sp   文件   bs   ad   时间   工作   管理   nbsp   

原文地址:http://www.cnblogs.com/hanying/p/4130476.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!