同畅达科技网

hdfs在不发生故障时的读文件过程?hdfs 写文件

文章目录


hdfs在不发生故障时的读文件过程?

HDFS的读文件过程主要包括客户端的请求、NameNode的元数据查询和DataNode的数据传输。

当客户端发送读文件请求时,NameNode会通过元数据查询找到文件所在的DataNode,然后与该DataNode建立连接并获取数据块。

hdfs在不发生故障时的读文件过程?hdfs 写文件-图1

客户端通过多次读取数据块并拼接成完整文件,完成文件读取操作。在此过程中,HDFS还会通过数据校验和、副本机制等手段保证数据的可靠性和高可用性。

在正式介绍HDFS小文件存储方案之前,我们先介绍一下当前HDFS上文件存取的基本流程。

(1) 读文件流程 1)client端发送读文件请求给namenode,如果文件不存在,返回错误信息,否则,将该文件对应的block及其所在datanode位置发送给client 2) client收到文件位置信息后,与不同datanode建立socket连接并行获取数据。

hdfs在不发生故障时的读文件过程?hdfs 写文件-图2

(2) 写文件流程 1) client端发送写文件请求,namenode检查文件是否存在,如果已存在,直接返回错误信息,否则,发送给client一些可用namenode节点 2) client将文件分块,并行存储到不同节点上datanode上,发送完成后,client同时发送信息给namenode和datanode 3) namenode收到的client信息后,发送确信信息给datanode 4) datanode同时收到namenode和datanode的确认信息后,提交写操作。

hdfs单个文件多大比较合理?

要大于一个block块,比较合适。

1. HDFS就是为存储GB,TB级别以上的数据文件而设计的。不适合存储小文件。

hdfs在不发生故障时的读文件过程?hdfs 写文件-图3

2. 我们只需要考虑文件大小的下限即可。存储的文件的大小下限,要根据HDFS上的block块大小决定。起码要大于一个block块,比较合适。

3. hadoop 2.x默认块大小为128M. hadoop3.x默认块大小为256M

4. 建议设置块大小为接近你硬盘的输出速率的2的N次方。比如你的硬盘平均输出速率为200M/s.那么就设置成256M。如果是400M/s,就设置成512M.

hdfs和文件存储区别?

存储方式与传统的文件

唯一的区别就是

对传统的文件实现分布式或者切块处理的时候很麻烦

很容易出错,用了hadoop

就会省去N多的时间

1、存储文件的时候需要指定存储的路径,这个路径是hdfs的路径。而不是哪个节点的某个目录。比如./hadoop fs -put localfile hdfspat
一般操作的当前路径是/user/hadoop比如执行./hadoop fs -ls .实际上就相当于./hadoop fs -ls /user/hadoop
2、hdfs本身就是一个文件系统,在使用的时候其实不用关心具体的文件是存储在哪个节点上的。如果需要查询可以通过页面来查看,也可以通过api来实现查询。

到此,以上就是小编对于hdfs写文件流程的问题就介绍到这了,希望介绍的3点解答对大家有用,有任何问题和不懂的,欢迎各位老师在评论区讨论,给我留言。

本站非盈利性质,与其它任何公司或商标无任何形式关联或合作。内容来源于互联网,如有冒犯请联系我们立删邮箱:83115484#qq.com,#换成@就是邮箱

转载请注明出处:https://www.szcet.com/jszs/6007.html

分享:
扫描分享到社交APP
上一篇
下一篇