Hierarchical Free Block Map for Sparse Metavolume Allocation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
There is a performance penalty associated with building a file system on a sparse metavolume due to the time required to search for free blocks of storage, which can be alleviated by maintaining a hierarchical map of free blocks and searching it in a top-down fashion to efficiently allocate storage.
Innovation Solution
A hierarchical map of free blocks is maintained and searched in a top-down fashion to quickly locate a free block of storage within a file system built on a sparse metavolume, allowing for efficient allocation and reducing search time.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a file system is built on a sparse metavolume with virtual storage, then storage management flexibility and dynamic provisioning are improved, but the time required to search for free blocks increases
Solution Approach 1:
The patent pre-calculates and stores summary information about free blocks in the hierarchical map before allocation occurs. This preliminary action allows the system to quickly locate free blocks during allocation without performing time-consuming searches through all virtual storage blocks at the moment of allocation.
Solution Approach 2:
The hierarchical map acts as an intermediary data structure between the virtual storage system and the file allocation process. It provides a simplified view of free block locations across multiple slices, mediating between the complex virtual storage architecture and the simple allocation requirement, thereby reducing search time.
2Measurement precision
If the file system searches through all blocks to ensure physical storage provisioning, then allocation accuracy is improved, but search time increases
Solution Approach 1:
The patent extracts the essential allocation information (free block locations and physical storage status) from the complete virtual storage system and consolidates it into the hierarchical map. This extraction allows the system to verify physical storage provisioning accuracy using only the relevant information in the hierarchical map, without searching through all virtual storage blocks.
Solution Approach 2:
Instead of performing a complete search through all virtual storage blocks, the patent performs a partial search limited to the hierarchical map, which contains only the necessary allocation information. This partial action is sufficient to ensure accurate physical storage verification while dramatically reducing search time.
3Productivity
If thin provisioning with sparse metavolumes is implemented, then storage utilization efficiency is improved, but free block location complexity increases
Solution Approach 1:
The patent segments the complex virtual storage system into manageable hierarchical levels (root level, intermediate levels, and leaf levels). Each level manages a portion of the storage space, allowing the system to maintain thin provisioning benefits while reducing the complexity of free block location through structured organization.
Solution Approach 2:
The patent introduces a hierarchical dimension to the storage management structure, organizing free block information across multiple levels rather than in a single flat structure. This dimensional change allows efficient navigation and location of free blocks in sparse metavolumes by searching through hierarchical levels instead of scanning all blocks linearly.
Data Source
AI summary
In a file server, a file system is built upon a volume of data storage. The file system includes multiple cylinder groups. Each cylinder group includes file system blocks. The file system blocks include allocated blocks and free blocks. The volume includes slices of storage, and each slice stores at least one of the cylinder groups. A hierarchical slice map has a top level that includes a count of free blocks in the file system, an upper level that includes a count of free blocks in groups of the slices, an intermediate level that includes a count of the free blocks in sub-groups of the slices, and a bottom level that includes a count of the free blocks in each slice of storage. To find a free block for allocation to a file, the slice map hierarchy is searched in a top-down fashion.


