Global Directory Object Filesystem Metadata Management
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional filesystems face inefficiencies in managing metadata, particularly in large directories, due to non-contiguous block storage and slow scanning operations, which hinder performance in operations like backups and virus scans.
Innovation Solution
The implementation of a global directory object (GDO) system that uses a B-Tree structure to store metadata in a hierarchical directory structure, allowing for efficient search, insertion, and retrieval of metadata records across multiple pages, with each page containing directory entries and metadata records, and employing filename values to optimize key management and storage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If traditional filesystems store directories in separate scattered blocks, then filesystem flexibility is improved, but directory traversal speed deteriorates
Solution Approach 1:
The global directory object is divided into multiple pages (first page, second page, third page, etc.), each containing a portion of directory entries. This segmentation allows the system to maintain flexibility in block allocation while improving traversal speed by loading only relevant pages during directory operations.
Solution Approach 2:
The patent introduces a hierarchical page structure where directory entries are organized across multiple pages with different levels of detail. The first page contains root entries, subsequent pages contain child entries, creating a dimensional hierarchy that optimizes both flexibility and traversal efficiency.
2Quantity of substance
If directories are stored in non-contiguous blocks, then storage utilization is improved, but scanning performance deteriorates
Solution Approach 1:
The directory structure is segmented into multiple pages, each containing a manageable portion of entries. This allows non-contiguous block storage to be organized into logical segments that can be scanned efficiently, improving both storage utilization and scanning performance.
Solution Approach 2:
The system pre-organizes directory entries across multiple pages in a hierarchical manner, so that when scanning is needed, the relevant pages are already structured and ready for efficient retrieval. This preliminary organization eliminates the need for sequential scanning of non-contiguous blocks.
3Adaptability or versatility
If inode tables are scattered among allocation groups, then filesystem adaptability is improved, but metadata access speed deteriorates
Solution Approach 1:
The global directory object serves multiple functions: it stores directory entries, maintains hierarchical structure, and provides efficient metadata access. By consolidating these functions into a unified structure organized across pages, the system achieves both adaptability and fast metadata access.
4Adaptability or versatility
If directory blocks are allocated separately, then storage flexibility is improved, but I/O operations increase
Solution Approach 1:
Multiple directory entries and their metadata are merged into a single global directory object organized across pages. This consolidation reduces the number of separate I/O operations needed to access directory information, while maintaining storage flexibility through the page-based structure.
Data Source
AI summary
A system and method of operating a filesystem for managing filesystem objects is disclosed. The filesystem objects are characterized by metadata parameters included in a global directory object arranged in a plurality of global directory object (GDO) pages. Responsive to receiving a request for creating a new filesystem object, a parent key is obtained. The parent key is indicative of an identifier of a direct parent directory requested for hosting the new filesystem object. A target page that corresponds to the parent key is located within the plurality of GDO pages. The target page further includes a direct parent directory metadata record associated with the direct parent key and includes metadata parameters related to the direct parent directory. An object key is created as corresponding to the same target page, thereby enabling accommodation of an object metadata record, related to the new filesystem object, on the target page.


