分享

Hdfs存储原理

zixindejie 发表于 2016-8-22 19:04:25 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 0 7440
本帖最后由 pig2 于 2016-8-23 14:14 编辑

HDFS实现思想:
1.hdfs是通过分布式集群来存储文件
2.文件存储到hdfs集群中去时被切分成block
3.文件的block存放在若干Datanode节点上
4.hdfs文件系统中的文件与真实的block之间有映射关系,有Namenode管理
5.每一个block在集群中会存储多个副本,可以提高数据可靠性和访问吞吐量

工作原理:客户端存储数据内容到某一个路径下,首先发送申请去Namenode节点。Namenode节点查询存储内容是否存在,若不存在则Namenode返回给客户端许可,客户端将内容分配到Datanode上。
    客户端存入数据将信息传入Namenode,Namenode将存储记录存入edits log;
    namenode返回客户端存储分配的Datanode;
    客户端向Namenode中的block中写入存储文件
    写完一个block将edits log中的记录更新到Namenode的内存中
    Namenode中的内存与fsimage互为镜像,fsimage中存储着数据内容

edits log中的新存储记录与fsimage合并:
    Namenode内存中有元数据,磁盘上的文件fsimage中也存有元数据,而日志edits log中存着最新的存储记录。当edits log中存储记录存满后,SecondaryNamenode进行checkpoint操作:SecondaryNamenode向Namenode发出信号使Namenode停止向edits log中写数据,此时Namenode产生一个新的日志文件New edits log记录客户端上传的文件。而Namenode中的fsimage和edits log被下载到SecondaryNamenode中进行合并成一个新的元数据镜像文件,生成后上传给Namenode。新的元数据文件将替换原来的文件,New edits log也会替换原来的edits log日志。来源:http://bbs.csdn.net/topics/392007082
更多
0





没找到任何评论,期待你打破沉寂

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条