Write Back Cache Allocation for Data Storage Subsystems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional data storage systems face bottlenecks in caching write back data due to the stress of handling large volumes of data from multiple remote hosts, leading to performance issues and potential data loss during electrical power interruptions.

Innovation Solution

A data storage system with a non-volatile write back cache that utilizes the host processor to allocate cache locations and directs caching operations, mirroring data to a secondary cache before writing it to a non-volatile destination, allowing the subsystem controller to manage data storage efficiently and resiliently against power losses.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If conventional data storage systems handle large volumes of data from multiple remote hosts, then data storage capacity increases, but system performance deteriorates due to bottlenecks in caching write back data

Engineering Contradiction:
Improvedata storage capacityVSAvoidcaching performance
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The system segments the caching operation into two distinct phases: (1) data write to the write back cache, and (2) data flush to the destination. By separating these operations, the system can accept data from multiple hosts without waiting for immediate flush completion, thereby increasing storage capacity while maintaining caching performance through parallel processing of write and flush operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary action by writing data to the write back cache immediately upon receipt from hosts, before the flush operation completes. This allows the cache to be populated in advance, and the flush can occur asynchronously, enabling the system to handle larger data volumes without performance degradation.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If the system waits for data to be written to non-volatile destination before freeing cache location, then data integrity is improved, but latency increases

Engineering Contradiction:
Improvedata integrityVSAvoidwrite latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary action by writing data to the non-volatile write back cache immediately, before the final flush to the destination completes. The cache location is freed as soon as the write to the cache is confirmed, not after the flush completes. This maintains data integrity through the non-volatile cache while reducing latency by allowing earlier cache reuse.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The non-volatile write back cache serves as a cushioning layer that protects against data loss during power interruptions or system failures. By having this intermediary non-volatile storage, the system can tolerate temporary uncommitted states without risking data loss, thereby reducing the need for strict synchronous flushing and lowering latency.

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

3Reliability

If the subsystem controller manages all caching operations, then data storage reliability is improved, but device complexity increases

Engineering Contradiction:
Improvedata storage reliabilityVSAvoidcontroller complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system enables self-service by allowing the host to manage its own write back cache directly, without requiring extensive intervention from the subsystem controller. The host allocates cache locations, writes data, and manages cache freeing operations independently. This reduces controller complexity while maintaining reliability through the non-volatile cache mechanism.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The non-volatile write back cache acts as an intermediary between the host and the final destination. This intermediary layer absorbs the complexity of data management, allowing the host to simply write to the cache without needing to coordinate complex flush operations with the controller, thereby reducing overall system complexity while maintaining reliability.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11803468B2Data storage system with write back cache
Publication Date: 2023.10.31 SEAGATE TECH LLC
  • US11803468B2 patent drawing
  • US11803468B2 patent drawing
  • US11803468B2 patent drawing

AI summary

A data storage system can have one or more hosts connected to a data storage subsystem with the host having a host processor and the data storage subsystem having a controller. Write back data generated at the host triggers the host processor to allocate a cache location in the data storage subsystem where the generated data is subsequently stored. The generated write back data is written in a non-volatile destination address as directed by the controller prior to waiting for a secondary event with the generated data stored in both the cache location and the non-volatile destination address. Detection of the secondary event prompts the controller to signal the host processor that the cache location is free for new data.