Data Block Utilization Tracking via Bitmaps in Storage Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Storage systems face challenges in tracking the utilization of data blocks effectively, particularly due to out-of-place updates which lead to fragmentation and the need for garbage collection, as they struggle to manage valid and invalid data items efficiently, impacting storage capacity reuse.

Innovation Solution

A data block utilization tracking system that employs a unique block ID and incremental data item ID scheme, using B+ tree and LSM tree data structures to manage metadata, ensuring efficient tracking and garbage collection by identifying valid and invalid data items, and reclaiming storage capacity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If out-of-place update scheme is employed to store updated data in new location, then data integrity is improved, but storage capacity utilization deteriorates due to fragmentation

Engineering Contradiction:
Improvedata integrityVSAvoidstorage capacity utilization
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent segments the storage space into fixed-size data blocks and segments the tracking mechanism into bitmaps for each block. This segmentation allows independent management of each block's utilization status, enabling efficient tracking without affecting overall storage capacity

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces bitmaps as an intermediary data structure between the physical data blocks and the logical tracking system. Each bitmap acts as a mediator that records the validity status of individual data items within a block, enabling efficient identification of reusable space without directly managing the fragmented data blocks

Inventive Principle:
Principle #24Intermediary (Mediator)

2Stability of the object's composition

If out-of-place updates are performed over time, then data versioning is improved, but garbage collection complexity increases

Engineering Contradiction:
Improvedata versioningVSAvoidgarbage collection complexity
Core Design Contradiction:
Stability of the object's compositionVSDevice complexity

Solution Approach 1:

The bitmap structure enables self-service garbage collection by automatically tracking which data items are valid and which are invalid. The system can autonomously identify blocks with all invalid entries and reclaim them without complex external management, reducing garbage collection complexity while maintaining data versioning

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The bitmap provides continuous feedback about the validity status of data items in each block. This feedback mechanism enables the system to make informed decisions about which blocks to reclaim and which to retain, simplifying the garbage collection process while preserving data versioning information

Inventive Principle:
Principle #23Feedback

3Measurement precision

If bitmap tracking is implemented for each data block, then data block utilization tracking precision is improved, but metadata storage overhead increases

Engineering Contradiction:
Improvedata block utilization tracking precisionVSAvoidmetadata storage overhead
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent applies local quality by creating bitmaps only for blocks that contain data items, rather than for all possible blocks. Each bitmap is localized to its specific block and only tracks the items within that block, providing precise tracking where needed while minimizing overall metadata overhead

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent changes the parameter of tracking precision by using bitmaps that track individual data items within blocks rather than tracking entire blocks as units. This parameter change enables fine-grained utilization tracking while the bitmap structure itself remains space-efficient, storing only one bit per data item

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11675789B2Tracking utilization of data blocks in a storage system
Publication Date: 2023.06.13 EMC IP HLDG CO LLC
  • US11675789B2 patent drawing
  • US11675789B2 patent drawing
  • US11675789B2 patent drawing

AI summary

A storage control system manages a utilization of data blocks of a storage volume which is partitioned into data blocks having a unique block identifier (ID) and a same block size. The storage control system receives data items and assigns a respective unique data ID to each data item, which include consecutive data IDs. The data items are written to a free data block as a whole, and a record for the written data block is inserted into a node of a first tree structure. The record includes the unique block ID of the written data block, a first data ID of the data items, and a bitmap which maps the consecutive data IDs of the data items in the written data block, starting from the first data ID, to a respective bit whose value indicates whether the data item associated with the data ID is valid or invalid.