Hadoop

FileSystem关键几个方法的时序图

2017-09-11  本文已影响25人  单行线的旋律

Hadoop将底层文件系统抽象成FileSystem类,上层用户可以通过相同方法操作底层不同的文件系统。常用的方法有get一个FileSystem实例,open打开一个文件的输入流,然后通过输入流的read方法读取数据。下面简单地将这三个方法时序流程中主要环节以时序图形式表示(以文件系统为HDFS为例),以便读者有所了解。

get时序图.jpg

NameNode返回块的位置数据格式如下所示:其中有文件大小,块是否损坏,每一个块所在的所有DataNode的位置,以及最后一个块的信息。
其中192.168.124.129为NameNode主机IP,192.168.124.130和192.168.124.131为DataNode主机IP.

LocatedBlocks{
fileLength=3
underConstruction=false
blocks=[LocatedBlock{BP-891302631-192.168.124.129- 1504501047605:blk_1073741827_1003; getBlockSize()=3; corrupt=false; offset=0; locs=[DatanodeInfoWithStorage[192.168.124.130:50010,DS-32818ad7-b98d-4b43-a43d-669972cb5df7,DISK], DatanodeInfoWithStorage[192.168.124.131:50010,DS-338b6d03-c41b-4129-bffe-aa61c61ef975,DISK]]}]
lastLocatedBlock=LocatedBlock{BP-891302631-192.168.124.129-1504501047605:blk_1073741827_1003; getBlockSize()=3; corrupt=false; offset=0; locs=[DatanodeInfoWithStorage[192.168.124.130:50010,DS-32818ad7-b98d-4b43-a43d-669972cb5df7,DISK], DatanodeInfoWithStorage[192.168.124.131:50010,DS-338b6d03-c41b-4129-bffe-aa61c61ef975,DISK]]}
isLastBlockComplete=true}

open时序图.jpg read时序图.jpg

查看原图

上一篇 下一篇

猜你喜欢

热点阅读