Bitmap Summary Tree for Scalable Storage Space Management
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for dynamically allocating storage space in large-scale storage systems are inefficient due to the high memory requirements and slow search times of traditional bitmap approaches, which become prohibitively expensive and slow as disk capacities increase.
Innovation Solution
A modified bitmap scheme using an auxiliary tree data structure with bitmap summary pages and summary entries, allowing for O(log(N)) time allocation and free requests, and enabling first-fit allocation in O(log(N)) time by separating bitmaps into fixed-size pages and summarizing information into multiple levels of summary pages.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a traditional bitmap is used to track storage block allocation, then the allocation state can be remembered, but the memory requirements become prohibitively expensive as disk capacity increases
Solution Approach 1:
The bitmap is divided into multiple pages, each managing a subset of storage blocks. This segmentation allows the system to track allocation states across large disk capacities while reducing the memory footprint by only loading necessary pages into memory, rather than maintaining a single large bitmap in memory.
Solution Approach 2:
The patent introduces a hierarchical structure with bitmap pages at one level and free space summaries at another level. This multi-dimensional organization allows efficient navigation and search through large storage spaces without requiring the entire bitmap to be loaded into memory, thus reducing memory requirements while maintaining reliable allocation tracking.
2Device complexity
If a traditional bitmap is used for storage allocation, then allocation tracking is simple, but search times become prohibitively slow as disk capacity increases
Solution Approach 1:
The system pre-computes and maintains free space summaries that aggregate information about contiguous free blocks at multiple levels of the hierarchy. This preliminary organization of data allows the system to quickly determine allocation availability without performing linear searches through the entire bitmap, thus reducing search time while maintaining structural simplicity.
Solution Approach 2:
By adding a hierarchical dimension with summary pages that aggregate free space information from multiple bitmap pages, the system enables efficient search operations. The summary structure allows O(log N) search time by navigating through hierarchical levels rather than scanning linearly through all blocks, thus reducing search time without significantly increasing complexity.
3Speed
If the entire bitmap is loaded into memory for fast access, then allocation requests can be processed quickly, but the memory consumption becomes prohibitively expensive
Solution Approach 1:
The bitmap is segmented into multiple pages that can be selectively loaded into memory based on access patterns. This allows the system to maintain fast access speeds by having frequently accessed bitmap pages in memory while avoiding the need to load the entire large bitmap, thus reducing memory consumption while preserving allocation request processing speed.
Solution Approach 2:
Instead of loading the entire bitmap into memory, the system loads only the necessary portions (specific bitmap pages) into memory based on current allocation needs. This partial loading approach reduces memory consumption while maintaining sufficient speed for allocation requests by ensuring that only the relevant data is cached in memory.
Data Source
AI summary
Systems and methods for allocating space in persistent storage are provided. A modified bitmap and a tree of bitmap summary pages are used to manage the free space of a large scale storage system. The bitmap is separated into fixed size pages and has bitmap summary entries to summarize the information in the bitmap. Bitmap summary pages can be further summarized into secondary summary pages. The tree data structure can continue to N levels until a topmost level has one bitmap summary page.


