I/O Data Caching Based on Throughput Comparison

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing caching methodologies are ineffective in filtering I/O data for remote storage environments, as they fail to distinguish between data that benefits from caching and data that does not, leading to inefficient use of caching resources due to bottlenecks in remote connections rather than local storage throughput.

Innovation Solution

A method that filters I/O data based on generation/consumption rates, caching data streams with rates greater than the local target storage device's throughput and not caching those with rates less than or equal to the throughput, optimizing the use of caching devices by avoiding bottlenecks in remote connections.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data is cached based on recency, frequency, block sizes, and file types, then local storage performance is improved, but remote connection efficiency deteriorates due to bottlenecked bandwidth

Engineering Contradiction:
Improvestorage performanceVSAvoidremote connection efficiency
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent changes the caching decision parameters from traditional metrics (recency, frequency, block size, file type) to include data generation/consumption rate comparison with remote connection throughput. This parameter change allows the system to identify when caching would be ineffective due to remote bottlenecks, thereby resolving the contradiction between local storage performance improvement and remote connection efficiency loss.

Inventive Principle:
Principle #35Parameter changes

2Speed

If all I/O data is cached to enhance storage speed, then read/write operations are faster, but caching resources are wasted on data that cannot be cached effectively due to remote bottlenecks

Engineering Contradiction:
ImproveI/O operation speedVSAvoidcaching resource utilization
Core Design Contradiction:
SpeedVSLoss of substance

Solution Approach 1:

The patent applies partial action by caching only the subset of I/O data that meets the effectiveness criteria (generation/consumption rate exceeds remote throughput). Instead of caching all data indiscriminately, the system selectively caches only those data streams where caching provides actual benefit, thereby optimizing resource utilization while maintaining speed improvements for relevant operations.

Inventive Principle:
Principle #16Partial or excessive action

3Speed

If caching is used to overcome slow mass storage, then access speed is improved, but the solution becomes ineffective when the bottleneck is the remote connection rather than local storage

Engineering Contradiction:
Improvedata access speedVSAvoidcaching effectiveness
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The patent implements feedback by continuously monitoring and comparing data generation/consumption rates against remote connection throughput. This feedback mechanism allows the caching system to dynamically adjust its behavior based on actual system conditions, identifying when the bottleneck is remote rather than local storage, and thereby maintaining reliability of caching effectiveness by avoiding ineffective caching scenarios.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS9274996B2Method for filtering cached input/output data based on data generation/consumption
Publication Date: 2016.03.01 SAMSUNG ELECTRONICS CO LTD
  • US9274996B2 patent drawing
  • US9274996B2 patent drawing
  • US9274996B2 patent drawing

AI summary

According to one embodiment, filtering cached input/output (I/O) data includes receiving a current I/O transfer that is part of an ongoing data stream, and evaluating whether to filter ongoing data streams once the data stream reaches are particular size threshold. The transfer rate for the ongoing data stream may be calculated and a determination is made as to whether the transfer rate is greater than a throughput associated with a target storage device. The current I/O transfer is cached if the transfer rate is greater than the throughput associated with a target storage device, or is not cached if the transfer rate is not greater than the throughput associated with a target storage device. The current I/O transfer may be also cached if the transfer rate is less than or equal to the throughput associated with the target storage device and the I/O transfer is a write I/O transfer.