HDFS(Hadoop Distributed File System)的读写流程主要包括以下步骤:
写入数据的流程:
1.客户端请求写入数据到HDFS。
2.客户端将数据划分为数据块(block),通常大小为128MB(可配置)。
3.客户端与NameNode通信,询问要将数据块写入哪些DataNode(存储节点)。
4.NameNode返回一组DataNode的列表,客户端选择其中一个作为主要副本(Primary Replica)。
5.客户端直接与主要副本的DataNode建立连接,并将数据块写入该DataNode。
6.主要副本的DataNode将数据块写入本地磁盘。
7.主要副本的DataNode与其他副本的DataNode进行数据复制,将数据块复制到其他副本所在的DataNode。
8.一旦所有副本的DataNode都确认写入成功,主要副本的DataNode将响应写入成功的消息给客户端。