Hadoop学习笔记(七)——HDFS基本原理

一、NameNode概述

  • NameNode也称为Master,是HDFS的核心。
  • NameNode仅存储HDFS的元数据。
  • 文件系统中所有文件的目录树,并跟踪整个集群中的文件。元数据就是DataNode上每个文件的块信息。
    • 块信息包括:文件的路径、文件的副本数量、文件的切块大小、文件的块信息、文件块的位置信息
  • NameNode不存储实际数据或数据集。数据本身实际存储在DataNodes中。
  • NameNode知道HDFS中任何给定文件的块列表及其位置。使用此信息NameNode知道如何从块中构建文件。
  • NameNode并不持久化存储每个文件中各个块所在的DataNode的位置信息,这些信息会在系统启动时从数据节点重建。
  • NameNode对于HDFS至关重要,当NameNode关闭时,HDFS / Hadoop集群无法访问。
  • NameNode是Hadoop集群中的单点故障。
  • NameNode所在机器通常会配置有大量内存(RAM)。

二、DataNode概述

  • DataNode负责将实际数据存储在HDFS中。
  • DataNode也称为Slave。
  • NameNode和DataNode会保持不断通信。
    • DataNode启动时,它将自己发布到NameNode并汇报自己负责持有的块列表。
    • DataNode会定期(dfs.heartbeat.interval配置项配置,默认是3秒)向NameNode发送心跳,如果NameNode长时间没有接受到DataNode发送的心跳, NameNode就会认为该DataNode失效。
  • 当某个DataNode关闭时,它不会影响数据或群集的可用性。NameNode将安排由其他DataNode管理的块进行副本复制。
  • DataNode所在机器通常配置有大量的硬盘空间。因为实际数据存储在DataNode中。
  • block汇报时间间隔取参数dfs.blockreport.intervalMsec,参数未配置的话默认为6小时。

三、HDFS的工作机制

1. HDFS写数据流程

在这里插入图片描述

2. HDFS读数据流程

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值