上篇文章讲了数据传输的格式,本文就来说说hdfs中写文件的流程。
hdfs客户端写文件的流程,大体可以分为两个步骤:第一步是创建或打开文件,第二步是进行block的写操作。
block的写操作具体又包括向NN请求添加一个新的block,然后根据NN的返回结果,与对应的DN建立连接,并进行数据的发送。
当一个block写完时,再次向NN请求添加新的block,同样根据返回结果与对应的DN建立连接并发送数据,之后不断重复这个过程,直到文件内容全部写完。
下图以创建文件为例,展开描述详细流程:
向NN发送创建文件请求
首先,客户端向NN发送创建文件的请求,在请求中指明文件的位置,文件的权限,文件的block副本数,block大小等。<