HDFS的读写流程

写入的流程

HDFS的读写流程_第1张图片HDFS的读写流程_第2张图片

流程:

  1. 客户端先向 NameNode 节点发送上传数据的请求

  2. NameNode 接收到请求之后进行权限校验,校验之后,会计算出来三个节点

  3. 客户端会将输入的文件切割成 块 ,然后一个个块进行传递

  4. 客户端先跟第一个服务器 创建连接,这个通道的名字是 PipeLine

  5. 每次传递数据的时候都是以 Packet 为单位进行传递的,每个 Packet 大约是 64KB

  6. 各个数据节点(DataNode)之前也会创建连接 PipeLine ,中间也是传递的 Packet

  7. 各个节点传递成功之后会进行应答响应。最后汇总起来一起告知客户端传递好了

  8. 不是第一个节点的数据传递好了才传给第二个节点的,而是三个节点几乎是同时进行的

读取流程

HDFS的读写流程_第3张图片

HDFS的读写流程_第4张图片

流程:

  1. 客户端向服务器端索要数据

  2. NameNode 先校验权限,接着从自己的内存中查看这个文件分别存储在哪些节点上,然后将这个信息告知给 Client

  3. Client 客户端拿到元数据之后,去各个节点上去拉取数据(不是副本)

  4. 将拉去的各个块的信息汇总起来,形成一个新的文件,就是我们想要的文件。

你可能感兴趣的:(hdfs,hadoop,大数据,big,data,linux)