客户端向NameNode发出写文件请求检查是否已存在文件、检查权限若通过检查,直接先将操作写入EditLog,并返回输出流对象 ,我来为大家讲解一下关于hdfs的读写流程?跟着小编一起来看一看吧!

hdfs的读写流程(快来看看)

hdfs的读写流程

客户端向NameNode发出写文件请求。检查是否已存在文件、检查权限。若通过检查,直接先将操作写入EditLog,并返回输出流对象。

client端按128MB的块切分文件。client将NameNode返回的分配的可写的DataNode列表和Data数据一同发送给最近的第一个DataNode节点,此后client端和NameNode分配的多个DataNode构成pipeline管道,client端向输出流对象中写数据。client每向第一个DataNode写入一个packet,这个packet便会直接在pipeline里传给第二个、第三个…DataNode。

每个DataNode写完一个块后,会返回确认信息。

写完数据,关闭输输出流。发送完成信号给NameNode。