面试官问 hdfs的读写流程 怎么回答呢
时间: 2024-04-18 20:11:29 浏览: 89
大数据工程师面试题
3星 · 编辑精心推荐
HDFS的读写流程大致如下:
1. 客户端向NameNode请求要读取或写入某个文件的数据块信息;
2. NameNode返回对应数据块的DataNode列表,客户端根据距离、负载等因素选择其中一个DataNode作为目标节点;
3. 客户端直接与目标DataNode建立连接进行数据读写,如果目标DataNode故障,则选择备份节点进行操作;
4. 在写入数据时,客户端将数据分成若干个数据块,每个数据块默认大小为128MB,然后将数据块发送给DataNode,DataNode接收到数据后将数据块存储到本地磁盘上;
5. 在读取数据时,客户端向目标DataNode发送读取请求,DataNode读取本地磁盘上的数据块并返回给客户端。
需要注意的是,HDFS的读写流程还有很多细节和优化,比如数据块的复制、DataNode的心跳检测、读取数据时的预读等等。
阅读全文