FSDirectory详解:配置和变量 #24

Merged
zeekling merged 5 commits from fsdir into master 2024-04-13 14:10:14 +00:00
Showing only changes of commit 6504a13b23 - Show all commits

View File

@ -33,12 +33,13 @@ FSDirectory的操作则全部是在内存中进行的 并不进行editlog的
## 常量 ## 常量
- INodeDirectory rootDir 整个文件系统目录树的根节点, 是INodeDirectory类型的 。 - INodeDirectory rootDir 整个文件系统目录树的根节点, 是INodeDirectory类型的 。
- FSNamesystem namesystem Namenode的门面类 这个类主要支持对数据块进行操作的一些方法, 例如addBlock()。 - FSNamesystem namesystem Namenode的门面类 这个类主要支持对数据块进行操作的一些方法, 例如addBlock()。
- INodeMap inodeMap 记录根目录下所有的INode,并维护INodeId ->INode的映射关系。 - INodeMap inodeMap 记录根目录下所有的INode,并维护INodeId ->INode的映射关系。
- ReentrantReadWriteLock dirLock 对目录树以及inodeMap字段操作的锁。 - ReentrantReadWriteLock dirLock 对目录树以及inodeMap字段操作的锁。
- NameCache<ByteArray> nameCache 将常用的name缓存下来 以降低byte[]的使用, 并降低JVM heap的使用。 - NameCache<ByteArray> nameCache 将常用的name缓存下来 以降低byte[]的使用, 并降低JVM heap的使用。
- SortedSet<String> protectedDirectories使用 dfs.namenode.protected.directories 设置保护的一组目录。 这些目录不能被删除,除非它们是空的。
- FSEditLog editLog 用于写editlog的类。
- HdfsFileStatus[] reservedStatuses 待定。
- INodeAttributeProvider attributeProvider用于实现权限管理。