hadoop的节点间的通信

一个DataNode上的Block是唯一的,多个DataNode可能有相同的Block。

2)通信场景:

(1)NameNode的映射表上不永久保存每个DataNode所对应的block信息,而是通过DataNode启动时的上报,来更新NameNode上的映射表(DataNode和Block)。

(2)DataNode和NameNode建立连接后,会定期心跳检测更新信息,心跳的返回也包含NameNode对DataNode的一些命令。

(3)DataNode也作为服务器接受来自客户端的访问,处理数据块读/写请求。

(4)DataNode之间还会相互通信,执行数据块复制任务,同时,在客户端做写操作的时候,DataNode需要相互配合,保证写操作的一致性。

datanode之间是要通信的,但不用ssh登录,只是socket通信。他们之间的通信对性能有影响,所以合理的block划分,对性能有影响。

posted on 2013-11-15 16:05  代码王子  阅读(448)  评论(0编辑  收藏  举报

导航