DataNode和Client三者之间协作关系及通讯格局介绍葡萄娱乐场

image.png

葡萄娱乐场 1

NameNode是独具HDFS元数据的企管者,用户数据永远不会经过NameNode。

1)NameNode、DataNode和Client

NameNode能够看成是分布式文件系统中的管理者,首要负责管理文件系统的命名空间、集群配置音信和储存块的复制等。NameNode会将文件系统的Meta-data存款和储蓄在内部存款和储蓄器中,那几个新闻重要不外乎了文本消息、每贰个文本对应的文件块的音讯和每3个文件块在DataNode的新闻等。

DataNode是文件存储的中坚单元,它将Block存储在本土文件系统中,保存了Block的Meta-data,同时周期性地将装有存在的Block音讯发送给NameNode。

Client便是内需得到分布式文件系统文件的应用程序。

2)文件写入

Client向NameNode发起文件写入的请求。

NameNode依照文件大小和文书块配置意况,重回给Client它所管理有个别DataNode的新闻。

Client将文件划分为多少个Block,依据DataNode的地方消息,按梯次写入到每多少个DataNode块中。

三)文件读取

Client向NameNode发起文件读取的呼吁。

NameNode返回文本存款和储蓄的DataNode的信息。

Client读取文件消息。


通讯格局介绍:

在hadoop系统中,master/slaves/client的相应关系是:

master—namenode;

slaves—datanode;

client—dfsclient;

那到底是由此怎么着的艺术开始展览通信的吗,在此处从大体上介绍一下:

简单易行地讲:

client和namenode之间是经过rpc通讯;

datanode和namenode之间是由此rpc通讯;

client和datanode之间是经过不难的socket通信。

随便拔一下DFSClient的代码,可以看来它有二个成员变量public final
ClientProtocolnamenode;

而再拔一下DataNode的代码,能够见到它也有3个成员变量public
DatanodeProtocolnamenode

图中提到多个剧中人物:NameNode、DataNode、Client。NameNode是管理者,DataNode是文本存款和储蓄者、Client是需求获得分布式文件系统的应用程序。

文件写入:

  • ①) Client向NameNode发起文件写入的乞请。
    二)
    NameNode依照文件大小和文件块配置情状,重临给Client它管理的DataNode的新闻。
    三)
    Client将文件划分为多个block,遵照DataNode的地点,按梯次将block写入DataNode块中。

文件读取:

1) Client向NameNode发起读取文件的伸手。
二) NameNode再次回到文件存款和储蓄的DataNode音讯。
叁) Client读取文件音讯。