为什么Hadoop具有不同的数据节点和datanode-namenode通信通信机制?

时间:2012-03-26 15:34:47

标签: hadoop

datanode-namenode通信使用org.apache.hadoop.ipc包;而dat-datanode间通信基于简单的套接字通信。

这种设计背后的动机是什么?

2 个答案:

答案 0 :(得分:6)

根据他们的要求有两个不同的任务,因此可以通过希望更好地满足要求来解释两种不同的实现。
DataNode - > NameNode通信比DataNode-DataNode通信更复杂,从而证明了RPC的合理性。
DataNode-DataNode通信一方面非常简单,需要高效传输大量数据。可以说套接字是这种情况下最有效的解决方案。

答案 1 :(得分:0)

根据JavaDoc,DatanodeProtocolInterDatanodeProtocol都来自org.apache.hadoop.ipc.VersionedProtocol。

话虽如此,基于文档,它看起来像DataNode(实现DatanodeProtocol)做得更多(与Namenode,其他数据节点和客户端的连接)。其中DataNodes之间的通信(通过InterDataNodeProtocol)表示简单的通信。

相关问题