From 6504a13b23d2166c9060159c7b174a899cca5648 Mon Sep 17 00:00:00 2001 From: zeekling Date: Sun, 31 Mar 2024 21:34:54 +0800 Subject: [PATCH] =?UTF-8?q?FSDirectory=E8=AF=A6=E8=A7=A3:=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E5=92=8C=E5=8F=98=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- hdfs/FSDirectory详解.md | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/hdfs/FSDirectory详解.md b/hdfs/FSDirectory详解.md index 381b495..cddf6e2 100644 --- a/hdfs/FSDirectory详解.md +++ b/hdfs/FSDirectory详解.md @@ -33,12 +33,13 @@ FSDirectory的操作则全部是在内存中进行的, 并不进行editlog的 ## 常量 - INodeDirectory rootDir: 整个文件系统目录树的根节点, 是INodeDirectory类型的 。 -- FSNamesystem namesystem: Namenode的门面类, 这个类主要支持对数据块进行操作的一些方法, 例如addBlock()。 -- INodeMap inodeMap: 记录根目录下所有的INode,并维护INodeId ->INode的映射关系。 -- ReentrantReadWriteLock dirLock: 对目录树以及inodeMap字段操作的锁。 -- NameCache nameCache: 将常用的name缓存下来, 以降低byte[]的使用, 并降低JVM heap的使用。 - - - +- FSNamesystem namesystem: Namenode的门面类, 这个类主要支持对数据块进行操作的一些方法, 例如addBlock()。 +- INodeMap inodeMap: 记录根目录下所有的INode,并维护INodeId ->INode的映射关系。 +- ReentrantReadWriteLock dirLock: 对目录树以及inodeMap字段操作的锁。 +- NameCache nameCache: 将常用的name缓存下来, 以降低byte[]的使用, 并降低JVM heap的使用。 +- SortedSet protectedDirectories:使用 dfs.namenode.protected.directories 设置保护的一组目录。 这些目录不能被删除,除非它们是空的。 +- FSEditLog editLog: 用于写editlog的类。 +- HdfsFileStatus[] reservedStatuses: 待定。 +- INodeAttributeProvider attributeProvider:用于实现权限管理。