整套大数据学习资料(视频+笔记)百度网盘无门槛下载:http://www.edu360.cn/news/content?id=3377

3.2.2. namenode 和 datanode

hadoop 花牛 14℃ 0评论

HDFS集群有两类节点以管理者-工作者模式运行,即一个namenode(管理者) 和多个datanode(工作者)。namenode管理文件系统的命名空间。它维护着 文件系统树及整棵树内所有的文件和目录。这些信息以两个文件形式永久 保存在本地磁盘上:命名空间镜像文件和编辑日志文件。namenode也记录着每个文件中各个块所在的数据节点信息,但它并不永久保存块的位置信 息,因为这些信息会在系统启动时由数据节点重建。

客户端(client)代表用户通过与namenode和datanode交互来访问整个文件系 统。客户端提供一个类似于POSIX(可移植操作系统界面)的文件系统接口, 因此用户在编程时无需知道namenode和datanode也可实现其功能。

datanode是文件系统的工作节点。它们根据需要存储并检索数据块(受客户

没有namenode,文件系统将无法使用。事实上,如果运行namenode服务 的机器毁坏,文件系统上所有的文件将会丢失,因为我们不知道如何根据 datanode的块重建文件。因此,对namenode实现容错非常重要,Hadoop 为此提供两种机制。

第一种机制是备份那些组成文件系统元数据持久状态的文件。Hadoop可以 通过配置使namenode在多个文件系统上保存元数据的持久状态。这些写操 作是实时同步的,是原子操作。一般的配置是,将持久状态写入本地磁盘 的同时,写入一个远程挂载的网络文件系统(NFS)。

另一种可行的方法是运行一个辅助namenode,但它不能被用作namenode。 这个辅助namenode的重要作用是定期通过编辑日志合并命名空间镜像,以 防止编辑日志过大。这个辅助namenode —般在另一台单独的物理计算机上 运行,因为它需要占用大量CPU时间与namenode相同容量的内存来执行 合并操作。它会保存合并后的命名空间镜像的副本,并在namenode发生故 障时启用。但是,辅助namenode保存的状态总是滞后于主节点,所以在主 节点全部失效时,难免会丢失部分数据。在这种情况下,一般把存储在 NFS上的namenode元数据复制到辅助namenode并作为新的主namenode 运行。

转载请注明:全栈大数据 » 3.2.2. namenode 和 datanode

喜欢 (0)or分享 (0)
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址