Storage Cache Deduplication for Boot Latency Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

High storage cache miss rates during initial boot-up in data processing systems, particularly in environments where multiple computers access the same storage subsystem, lead to noticeable delays due to the high latency of mechanical disk rotations.

Innovation Solution

Implementing a deduplication mechanism within the storage cache system to eliminate duplicate data across identical storage partitions, using a deduplication module to create a storage cache partition table that associates identical data ranges, allowing only one copy of common data to be cached, thereby reducing the effective miss rate.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple computers access the same storage subsystem simultaneously during boot-up, then each computer can access its required data, but the storage cache miss rate increases significantly causing noticeable delays

Engineering Contradiction:
Improveboot-up speedVSAvoidcache miss delay
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent merges identical data from multiple storage partitions into a single cached copy. The deduplication module identifies identical data across partitions and creates one shared cache entry that serves all requesting computers, transforming individual cache operations into a consolidated shared cache operation that reduces overall miss rate and improves boot-up performance

Inventive Principle:
Principle #5Merging (Combining)

2Adaptability or versatility

If the storage cache caches identical data from multiple storage partitions, then each partition can access its data independently, but the cache memory is wasted due to duplicate copies

Engineering Contradiction:
Improvepartition independenceVSAvoidcache memory usage
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent uses intelligent copying where identical data is copied once into a shared cache entry that is reference-counted and shared among multiple partitions. The system creates a single cache copy for identical data blocks from different partitions, with the cache entry maintaining references to all owning partitions, thereby eliminating redundant memory usage while preserving partition independence through logical addressing

Inventive Principle:
Principle #26Copying

3Productivity

If the storage cache is shared among multiple computers, then cache memory utilization improves, but managing and tracking data ownership across partitions becomes complex

Engineering Contradiction:
Improvecache utilization efficiencyVSAvoidcache management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces a deduplication module as an intermediary between the storage partitions and the cache. This module acts as a mediator that automatically identifies identical data, manages cache entry creation, tracks partition ownership through reference counting, and handles cache validation. The intermediary abstracts the complexity from individual partition operations while enabling efficient shared cache utilization

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS8190823B2Apparatus, system and method for storage cache deduplication
Publication Date: 2012.05.29 LENOVO SWITZERLAND INTERNATIONAL GMBH
  • US8190823B2 patent drawing
  • US8190823B2 patent drawing
  • US8190823B2 patent drawing

AI summary

An apparatus, system, and method are disclosed for deduplicating storage cache data. A storage cache partition table has at least one entry associating a specified storage address range with one or more specified storage partitions. A deduplication module creates an entry in the storage cache partition table wherein the specified storage partitions contain identical data to one another within the specified storage address range thus requiring only one copy of the identical data to be cached in a storage cache. A read module accepts a storage address within a storage partition of a storage subsystem, to locate an entry wherein the specified storage address range contains the storage address, and to determine whether the storage partition is among the one or more specified storage partitions if such an entry is found.