NameNode和DataNode之间的通信
NameNode(主节点)
- 接收DN的注册信息 并返回唯一的集群ID和统一的存储目录和UUID
- 接收DN汇报的磁盘空间和存储情况 分配存储任务给DN
- 接收DN的心跳机制和数据汇报
- 维护元数据信息的副本个数,给DN分配副本任务
- 管理和维护数据的存储信息(存储位置有:内存+磁盘 并且会复制子多份)
- 接收客户端发送的上传和下载的请求 并返回元数据的存储信息
- 给客户端提供虚拟的文件列表(shell命令)
- 从节点注册后发给DN的集群ID
注意:
若从节点个数有限,当主节点分配副本任务时,从节点防火墙又未关闭,会造成副本全部存储到一台节点机的问题
DataNode(从节点)
- 向NN发送注册信息 汇报磁盘空间/数据存储情况
- 接收NN发送的集群ID 和UUID(集群UD是主节点初始化所产生的)
- 发送心跳机制给NN 并接收副本任务(维护数据在集群中的个数)
- 真正存储数据的地方
- 真正与客户端进行交互的地方(上传和下载)