Inode Metadata Pathname Caching for File System Mapping
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current file systems face inefficiencies in mapping inode numbers to their corresponding pathnames, leading to computationally intensive and time-consuming processes for administrators, especially when dealing with large numbers of data containers, and existing solutions either increase complexity or fail to persistently store accurate pathname information.
Innovation Solution
Incorporating a metadata section in each inode with a primary name data structure containing the parent directory inode and cookie value, along with an alternate name file using a B+ tree design to efficiently store and retrieve inode to pathname mappings, allowing for rapid identification of pathnames and persistent storage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If traditional file systems are used for inode to pathname mapping, then the system can operate with simple structure, but the mapping process becomes computationally intensive and time-consuming
Solution Approach 1:
The patent pre-computes and stores pathname information in the inode metadata section during file creation or modification operations. This preliminary action eliminates the need for computationally intensive pathname resolution at query time, directly addressing the contradiction by improving mapping speed through advance preparation of data.
Solution Approach 2:
The patent introduces an intermediary data structure (metadata section with pathname caching) between the inode and the pathname resolution process. This intermediary stores pre-computed pathname information, acting as a mediator that speeds up the mapping process without requiring complex real-time computation, thus resolving the contradiction between productivity and complexity.
2Reliability
If pathname information is stored in memory only, then access is fast, but the information is lost when the system restarts
Solution Approach 1:
The patent performs preliminary action by writing pathname information to the inode metadata section on disk during file operations. This ensures that when the system restarts, the pathname information is already persisted and immediately available, eliminating the time loss associated with re-retrieving from memory after restart.
Solution Approach 2:
The patent creates a copy of pathname information in the inode metadata section that persists on disk. This copy mechanism ensures reliability by maintaining pathname information across system restarts, while the copy itself is optimized for quick access, thus resolving the contradiction between persistence and access time.
3Productivity
If administrators manually traverse the file system to find pathnames, then no additional storage is needed, but the process is time-consuming and inefficient
Solution Approach 1:
The patent applies preliminary action by pre-storing pathname information in the inode metadata section during normal file operations. This eliminates the need for administrators to manually traverse the file system, significantly improving productivity while requiring minimal additional storage space since the metadata is stored within the existing inode structure.
Solution Approach 2:
The patent makes the inode metadata section multi-functional by using it for both traditional inode information storage and pathname caching. This universal approach improves administrative efficiency by providing fast pathname lookup without requiring separate dedicated storage structures, thus resolving the contradiction between productivity and storage quantity.
Data Source
AI summary
A system and method maintains mappings from data containers to their parent directories within a file system of a storage system. Each inode is modified to include a primary name data structure comprising a parent directory inode and a parent directory cookie value. The parent directory cookie value identifies a particular directory entry within a specified block of a directory identified by parent directory inode. An alternate name file is utilized to store alternate names, such as those associated with hard links.


