大数据之--------hadoop存储(HDFS)

Hadoop 的存储系统是 HDFS(Hadoop Distributed File System)分布式文件系统,对外部客户端而言,HDFS 就像一个传统的分级文件系统,可以进行创建、删除、移动或重命名文件或文件夹等操作,与 Linux 文件系统类似。

Client客户端
文件切片,文件上传的时候,Client对上传的文件进行切片成一个一个block,然后进行存储
与namenode交互,获取文件位置信息
与datanode交互,读取或写入数据
Client 提供一些命令来管理 和访问HDFS,比如启动或者关闭HDFS。
namenode
管理HDFS的名称空间
管理数据块的映射信息
处理副本策略
处理客户端的请求
作用:
1:namenode的元数据信息(文件名,目录,属性,每个文件的块列表)
2:namenode文件操作 namenode负责文件元数据的操作
3:namenode副本机制 文件的副本具体放在哪些datanode上是由namenode决定的
4:namenode心跳机制 全权管理数据块的复制,周期性的接受心跳和块状态报告信息,每十分钟发送一次如果超过这个时间没有接受到请求会认为datanode已近宕机,会把数据块重新复制,块状态的报告包含所有数据块的列表每一小时发送一次
datanode
存储实际的数据块
执行数据块的读/写操作
作用:
1:datanode以数据块的方式存储HDFS
2:datanode响应hdfs客户端的读写请求
3:datanode周期向namenode发送心跳请求
4:datanode周期向namenode汇报数据块信息
5:datanode周期性向namenode汇报缓存数据块信息
seconddaynamenode
辅助namenode,分担其工作量
定期合并fsimage和fsedits,并推送给namenode
紧急情况可以恢复namenode
文件的副本机制
一个文件有可能大于集群中的任意一块磁盘,引入块机制,可以很好地解决这个问题
使用块作为文件存储的逻辑单位可以很好的简化存储系统
块非常适用于数据备份从而提供数据的容错能力
机架感知
分布式文件存储系统内部有一个副本存放的策略
第一个副本块存本机
第二个副本快存同机架的其它服务器
第三个副本快存放不同机架的服务器

上一篇:几种访问HDFS文件的客户端的总结


下一篇:大数据之--------hadoop存储(HDFS)