`

DatanodeDescriptor类图描述

 
阅读更多

本想画个UML里的标准类图的,可惜linux下的画图工具都不那么好使,然后装了xmind,发现用这个画也还可以,就是每次图的位置不好定。

 这里涉及到的其他类将在单独的blog里分析,因为整个图实在太大了,我发现用xmind搞的美观而且还方便记忆。

 

光有图还不能说清他们的具体功能,故增加点文字描述信息

 

    Node

Java代码   收藏代码
  1. /** The interface defines a node in a network topology.  
  2.  * A node may be a leave representing a data node or an inner  
  3.  * node representing a datacenter or rack.  
  4.  * Each data has a name and its location in the network is  
  5.  * decided by a string with syntax similar to a file name.   
  6.  * For example, a data node's name is hostname:port# and if it's located at  
  7.  * rack "orange" in datacenter "dog", the string representation of its  
  8.  * network location is /dog/orange  
  9.  */   

 

    DatanodeID

 

Java代码   收藏代码
  1. /**  
  2.  * DatanodeID is composed of the data node   
  3.  * name (hostname:portNumber) and the data storage ID,   
  4.  * which it currently represents.  
  5.  *   
  6.  */   

 

    DatanodeInfo

 

Java代码   收藏代码
  1. /**   
  2.  * DatanodeInfo represents the status of a DataNode.  
  3.  * This object is used for communication in the  
  4.  * Datanode Protocol and the Client Protocol.  
  5.  */   

 

     DatanodeDescriptor

 

Java代码   收藏代码
  1. /**************************************************  
  2.  * DatanodeDescriptor tracks stats on a given DataNode,  
  3.  * such as available storage capacity, last update time, etc.,  
  4.  * and maintains a set of blocks stored on the datanode.   
  5.  *  
  6.  * This data structure is a data structure that is internal  
  7.  * to the namenode. It is *not* sent over-the-wire to the Client  
  8.  * or the Datnodes. Neither is it stored persistently in the  
  9.  * fsImage.  
  10.  
  11.  **************************************************/   

 更多信息请查看 java进阶网 http://www.javady.com

分享到:
评论

相关推荐

    Hadoop源代码分析(三二)

    通过`datanodeMap`(一个存储`StorageID`到`DatanodeDescriptor`映射的数据结构),NameNode能够快速找到与当前注册请求相对应的`DatanodeDescriptor`。 - **步骤4:处理Storage变化** 如果发现DataNode的`...

    Hadoop源代码分析(三三)

    该命令主要通过`DatanodeDescriptor.getLeaseRecoveryCommand`获取,其作用是从`DatanodeDescriptor.recoverBlocks`队列中取出待恢复的数据块信息,并将其封装到`BlockCommand`中,设置`BlockCommand`的类型为`DNA_...

    Hadoop源代码分析(一九)

    转向`Datanode*`类,`DatanodeID`和`DatanodeInfo`在`org.apache.hadoop.hdfs.protocol`包中定义,而`DatanodeDescriptor`是`DatanodeInfo`的子类,增加了更多NameNode所需的状态信息。`DatanodeDescriptor`包含`...

    Hadoop源代码分析(二六)

    `Host2NodesMap` 的核心是一个 `HashMap, DatanodeDescriptor[]>`,其中键是主机名(字符串形式),值是 `DatanodeDescriptor` 数组。这一设计使得 Hadoop 能够快速查找并获取到某个主机上所有数据节点的信息。 `...

    Hadoop源代码分析(三四)

    - **加入**:如果`BlocksMap`中存在数据块,但在当前`DatanodeDescriptor`中未找到对应信息,则调用`addStoredBlock`方法来添加这些数据块。 - **使无效**:如果`BlocksMap`中找不到某个数据块,则将其标记为无效...

    源代码分析(一九).docx

    - `BlockTargetPair`和`BlockQueue`:`DatanodeDescriptor`的内部类,用于管理和追踪DataNode上Block的复制和Lease恢复操作。 6. **权限和安全**:HDFS支持基于用户和组的权限控制,类似于UNIX系统。每个`INode`都...

    高可用性的HDFS:Hadoop分布式文件系统深度实践

    2.2.3 BlockInfo和DatanodeDescriptor 2.2.4 小结 2.2.5 代码分析——元数据结构 2.3 磁盘元数据文件 2.4 Format情景分析 2.5 元数据应用场景分析 第3章 Hadoop的元数据备份方案 3.1 运行机制分析 4 3.1.1 NameNode...

    hadoop分析

    维护HDFS文件系统中文件和目录的信息,分为内存元数据和元数据文件两种。NameNode维护整个元数据。...INode:文件的基本元素:文件和目录BlockInfo:文件内容对象DatanodeDescriptor:具体存储对象。3、FSImag

    hdfs源码.zip

    3.3.1 DatanodeDescriptor 212 3.3.2 DatanodeStorageInfo 214 3.3.3 DatanodeManager 217 3.4 租约管理 233 3.4.1 LeaseManager.Lease 233 3.4.2 LeaseManager 234 3.5 缓存管理 246 3.5.1 缓存概念...

Global site tag (gtag.js) - Google Analytics