广州总校区切换校区
图片
news

新闻资讯

HDFS如何读数据

发布时间: 2022-11-24

HDFS如何读数据,如图1所示,HDFS进行读数据描述如下。



图1 HDFS读数据流程图

(1)调用FileSystem对象的Open方法,其实获取的是一个DistributedFileSystem的实例。

(2)DistributedFileSystem通过RPC(远程过程调用)获得文件的第一批Block的Locations,同一Block按照重复数会返回多个Locations,这些Locations按照Hadoop拓扑结构排序,距离客户端近的排在前面。

(3)前两步会返回一个FSDatalnputStream对象,该对象会被封装成DFSlnputStream对象,DFSlnputStream可以方便地管理DataNode和NameNode数据流。客户端调用Read方法,DFSlnputStream就会找出离客户端最近的DataNode并连接DataNode。

(4)数据从DataNode源源不断地流向客户端。

(5)如果第一个Block块的数据读完了,就会关闭指向第一个Block块的DataNode连接,接着读取下一个Block块。这些操作对客户端来说是透明的,从客户端的角度来看只是读一个持续不断的流。

(6)如果第一批Block都读完了,DFSlnputStream就会去NameNode拿下一批Block的Locations,然后继续读,如果所有的Block块都读完,这时就会关闭掉所有的流。

上一篇: VLAN优点有哪些

下一篇: 封装PPP及配置其验证方式

<
在线咨询 ×

您好,请问有什么可以帮您?我们将竭诚提供最优质服务!