Disk Cache Allocation Using Segregated Units

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In disk cache systems using shingled magnetic recording (SMR), the circular reuse method limits the flexibility and efficiency of data allocation and cleaning, leading to reduced cache utilization due to constraints on write forward corruption and stale data management, which can result in unused and stale units being unavailable for new data storage.

Innovation Solution

The disk cache is segregated into isolated allocation units with specific isolation spaces to enable out-of-order reuse, allowing for flexible allocation and cleaning policies based on workload, reducing write forward corruption, and optimizing cache efficiency by reusing stale data first.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If circular reuse method is used in disk cache, then data allocation is simplified, but cache utilization is reduced due to constraints on write forward corruption and stale data management

Engineering Contradiction:
Improvedata allocation complexityVSAvoidcache utilization
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The disk cache is divided into multiple independent allocation units, each with isolation spaces separating them. This segmentation allows different units to be managed independently, enabling out-of-order allocation and cleaning operations while maintaining data integrity through the isolation spaces that prevent write forward corruption between units.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic allocation policies that allow the cache to adaptively select which allocation units to use based on current workload conditions. The system can dynamically switch between in-order and out-of-order allocation strategies, and can dynamically identify and clean stale data units, optimizing cache utilization under varying workload conditions.

Inventive Principle:
Principle #15Dynamics

2Adaptability or versatility

If out-of-order allocation is implemented, then cache flexibility and utilization are improved, but write forward corruption risks increase

Engineering Contradiction:
Improvecache allocation flexibilityVSAvoiddata integrity
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

Isolation spaces are introduced as intermediary regions between adjacent allocation units in the disk cache. These isolation spaces act as buffers that prevent write operations in one allocation unit from corrupting data in adjacent units, thereby enabling safe out-of-order allocation while maintaining data integrity across the cache structure.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Quantity of substance

If stale data is not cleaned efficiently, then cache capacity is wasted, but cleaning operations increase access time and reduce throughput

Engineering Contradiction:
Improveavailable cache capacityVSAvoidcleaning operation time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The system performs preliminary identification of stale data units by tracking allocation status and data validity markers. Before cleaning operations are executed, the system has already identified which allocation units contain stale data, allowing for targeted and efficient cleaning operations that minimize access time while maximizing cache capacity utilization.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements efficient discarding of stale data from identified allocation units and recovering those units for new data storage. The system systematically discards stale data markers and recovers the underlying cache capacity, maintaining a balance between cache utilization and cleaning overhead through optimized discard operations.

Inventive Principle:
Principle #34Discarding and recovering

Data Source

PatentUS10089234B2Disk cache allocation
Publication Date: 2018.10.02 SEAGATE TECH LLC
  • US10089234B2 patent drawing
  • US10089234B2 patent drawing
  • US10089234B2 patent drawing

AI summary

Implementations disclosed herein provide a method comprising determining a workload on a disk cache with a storage device controller, determining a state of a free pool of the disk cache, receiving a data write request to the disk cache, segregating the free pool of the disk cache into a plurality of allocation units, allocating the plurality of allocation units out of order, as compared to a physical arrangement order of the allocation units in the disk cache, based on the workload, and storing data in the plurality of allocation units.