HDFS protocol: Block 块定义,组成(blockId,numBytes,generationStamp),定义问块文件的文件命名为blk_{blockId},存储的最小单位。 BlockListAsLongs:每个Block块可以由3个long的数字表达,使用long[]存储Block[],主要用于datanode高效的上报给namenode DatanodeID:标准dataNode,由name,storageID,infoPort(info服务端口),ipcPort(ipc服务端口)组成。ustorageID是hadoop集群唯一的。name由hostname:port组成。 DatanodeInfo: DatanodeInfo represents the status of a DataNode. This object is used for communication in the Datanode Protocol and the Client Protocol 继承DatanodeID,实现Node,表示dataNode的统计信息,包括总容量,已用,剩余,名称,hostname,路径等信息
LocatedBlock:定义块的定位,包括block,在文件中的偏移量offset和存储的所有节点信息DatanodeInfo[] LocatedBlocks:定义文件的块信息,包括文件大小,LocatedBlock集合和underConstruction(目前不晓得做什么,后面看看在说)等
namenode: ClientProtocol:定义客户端与Namenode的HDFS相关的文件系统操作,因为Namenode只是提供元数据的操作,所有该接口提供了出去IO操作的主要文件系统操作定义。 同时实现VersionedProtocol表示通过ipc方式为客户端提供RPC服务。由NameNode(服务器端)和DistributeFileSystem(客户端)分别实现该接口 DatanodeProtocol:namenode与datanode间通讯的业务接口 NamenodeProtocol:定义secondary Namenode与Namenode间通讯的业务接口。
core-net包 Node: 接口,抽象定义网络拓扑中的一个节点,每个节点都定义name(名称),networkLocation(路径,如/datacenter1/rack1);也拥有Node的Parent引用
NodeBase: Node的基本实现,默认适配器模式。 |