Hadoop 名称节点元数据

leo*_*eon 2 hadoop namenode

我对 Hadoop 架构有点困惑。

  1. Hadoop Namenode 中存储了什么样的文件元数据?从 Hadoop wiki,它说 Namenode 存储整个系统命名空间。Namenode 中是否存储了上次修改时间、创建时间、文件大小、所有者、权限等信息?

  2. datanode 是否存储任何元数据信息?

  3. 只有一个Namenode,元数据数据能不能超过服务器的限制?

  4. 如果用户想从 Hadoop 下载文件,他是否必须从 Namenode 下载?我从网上找到了下面的架构图,它显示客户端可以直接将数据写入数据节点吗?这是真的吗? 在此处输入图片说明

谢谢!!!!!!!

Dav*_*man 6

我认为下面的解释可以帮助您更好地理解 HDFS 架构。您可以将 Name 节点视为 FAT(文件分配表)+ Directory 数据,将 Data 节点视为哑块设备。当你想从常规文件系统中读取文件时,你应该进入目录,然后进入 FAT,获取所有相关块的位置并读取它们。HDFS 也会发生同样的情况。当你想读取文件时,你去 Namenode,获取给定文件的列表块。有关区块的信息将包含此信息所在的数据节点列表。之后,您转到数据节点并从中获取相关块。