HDFS官网翻译——HDFS 架构指南(二)

举报
敏敏君主 发表于 2021/01/29 09:31:25 2021/01/29
【摘要】 翻译https://hadoop.apache.org/docs/r1.2.1/hdfs_design.html-----------------------------------------------------------------------------------------------NameNode 和 DataNodesHDFS是一个主备架构。一个HDFS集群包含一个Na...

翻译https://hadoop.apache.org/docs/r1.2.1/hdfs_design.html

-----------------------------------------------------------------------------------------------

NameNode 和 DataNodes

HDFS是一个主备架构。一个HDFS集群包含一个NameNode——主服务器用于管理文件系统的命名空间和管理从客户端访问文件。另外,一个HDFS集群还存在好几个DataNode,通常DataNode管理自身存储的数据。HDFS公开了一个文件系统命名空间,允许用户数据存储在文件中。从内部视角看,一个文件被分片为多个块存储到多个DataNode节点上。NameNode节点执行文件系统命名空间操作,比如打开、关闭和文件与目录的重命名。同时,NameNode也决定了DataNode的块map。DataNode主要用于相应客户端对于文件的读与写。同时,也执行NameNode发送的命令——块的创建、删除与复制。

NameNode和DataNode是一组被设计用来在廉价服务器运行的软件,一般情况下它们运行GNU/linux操作系统。HDFS是用Java语言写的;任何支持Java的机器都可以运行NameNode和DataNode软件。使用高兼容性语言Java使得HDFS可以部署到很多机器上。典型的部署情况为:用一台专用的机器只部署NameNode软件,集群上其他机器运行DataNode软件实例。这种架构不能阻止在同一台机器上运行多个DataNode实例,当然,这种情况在实际使用时极少发生。

集群中单NameNode节点极大地简化了系统架构。NameNode只负责元数据,而用户数据不通过NameNode。

文件系统命名空间

HDFS支持传统的分层文件组织。用户或应用可以创建目录并将文件存入这些目录。分层的文件系统命名空间类似其他大部分文件系统一样,可以创建、删除文件,将一个文件从一个目录移动到另一个目录。HDFS还不支持用户配额限制,不支持软硬件链接。但是HDFS架构本身并不阻碍用户配额、软硬件链接的实现。换句话说,就是这两个功能将来也可能实现。

NameNode负责文件系统命名空间。NameNode将记录任何命名空间或其属性的变更。应用可以指定文件存储副本数,这个配置保存在NameNode中。副本数叫做副本因子,存储在NameNode中。

【版权声明】本文为华为云社区用户翻译文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容, 举报邮箱:cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。