Bitmap Summary Tree for Scalable Storage Space Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improveallocation state trackingVSAvoidmemory requirements
Core Design Contradiction:
ReliabilityVSQuantity of substance

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.

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

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

Engineering Contradiction:
Improvebitmap structure simplicityVSAvoidsearch time
Core Design Contradiction:
Device complexityVSLoss of time

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.

Inventive Principle:
Principle #10Preliminary action

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.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

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

Engineering Contradiction:
Improveallocation request processing speedVSAvoidmemory consumption
Core Design Contradiction:
SpeedVSQuantity of substance

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.

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS10528459B2Scalable space management using bitmap summary tree
Publication Date: 2020.01.07 VMWARE INC
  • US10528459B2 patent drawing
  • US10528459B2 patent drawing
  • US10528459B2 patent drawing

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.