Cache Sub-Area Allocation in Scale-Out Storage Nodes

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Scale-out storage systems face challenges in improving write performance due to increased data copying between nodes, which reduces bandwidth and degrades I/O performance, especially when data path bandwidth is a bottleneck, and existing methods do not effectively address this issue without compromising cache hit rates.

Innovation Solution

A storage system with tight coupling between nodes, where at least two controllers specify cache sub-areas for write data storage based on the receiving and processing controllers, minimizing data copying and optimizing cache allocation to enhance write throughput without reducing response performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If tight coupling is used to reduce data copying between nodes, then write throughput is improved, but the complexity of cache management increases

Engineering Contradiction:
Improvewrite throughputVSAvoidcache management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces a cache management unit as an intermediary component that centralizes cache allocation and management functions. This unit receives write requests, determines optimal cache allocation across nodes, and coordinates data copying operations, thereby reducing the complexity burden on individual storage controllers while improving write throughput through optimized cache utilization.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent implements dynamic cache allocation where the cache management unit adaptively determines cache segment assignments based on real-time system state, access patterns, and node availability. This dynamic approach allows the system to optimize write throughput under varying workloads while maintaining manageable complexity through automated decision-making algorithms.

Inventive Principle:
Principle #15Dynamics

2Reliability

If data is cached at multiple nodes for redundancy, then reliability is improved, but bandwidth consumption increases and I/O performance degrades

Engineering Contradiction:
Improvedata reliabilityVSAvoidbandwidth consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent applies local quality by differentiating cache allocation strategies based on data characteristics, access patterns, and node-specific conditions. Rather than uniformly caching all data at multiple nodes, the system selectively allocates cache segments to specific nodes based on local conditions such as node capacity, current load, and data access frequency, thereby reducing unnecessary bandwidth consumption while maintaining reliability for critical data.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent dynamically changes cache allocation parameters including the number of nodes receiving cached copies, the size of cache segments, and the redundancy level based on system state. This allows the system to adjust reliability and bandwidth consumption trade-offs in real-time, maintaining data reliability when needed while minimizing bandwidth usage during normal operations.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11755249B2Storage system including storage nodes to determine cache allocations to implement cache control
Publication Date: 2023.09.12 HITACHI VANTARA LTD
  • US11755249B2 patent drawing
  • US11755249B2 patent drawing
  • US11755249B2 patent drawing

AI summary

To improve performance of a storage system. The storage system includes a plurality of storage nodes that communicate via a network. Each of the plurality of storage nodes includes one or more controllers. At least one controller in the controllers specifies at least two controllers that allocate a cache sub-area where write data is stored based on a controller that receives the write data from a host and a controller that processes the write date, and the cache sub-area is allocated in the specified controllers.