Storage Cache Write Handling via Read-After-Write Probability

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data storage systems face challenges in improving cache performance under recovery time objective (RTO) and recover point objective (RPO) constraints, as write operations can impact I/O performance due to blocking locks and write journals, leading to limitations in parallelism and space inefficiency.

Innovation Solution

A system that determines the probability of a read-after-write event using exponential smoothing and Bayesian inference to decide between journaling and normal cache processing, allowing for compact journals that consume less space and improve cache efficiency by reserving cache space for more recent data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If write operations use blocking locks and write journals to ensure data integrity under RTO and RPO constraints, then reliability is improved, but device complexity and loss of time increase due to reduced parallelism and performance impact

Engineering Contradiction:
Improvedata integrityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent changes the parameter of write operation handling by introducing probability-based decision-making. Instead of always using blocking locks and write journals, the system calculates a probability that a read operation will occur before the write is complete, and only uses journaling when this probability exceeds a threshold. This parameter change allows the system to maintain reliability when needed while reducing complexity and performance impact when not needed.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent introduces dynamic behavior to the write operation handling mechanism. The system continuously monitors I/O patterns and adjusts its behavior based on real-time probability calculations. This dynamic approach allows the system to adapt between different operational modes (journaling vs. normal processing) based on current workload characteristics, thereby resolving the contradiction between reliability and complexity.

Inventive Principle:
Principle #15Dynamics

2Reliability

If write operations use blocking locks and write journals to ensure data integrity under RTO and RPO constraints, then reliability is improved, but productivity deteriorates due to limitations in parallelism and I/O performance

Engineering Contradiction:
Improvedata integrityVSAvoidI/O performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent changes the operational parameter from deterministic journaling to probability-based selective journaling. By calculating the likelihood of read-before-write completion events and comparing against a threshold, the system optimizes I/O performance by avoiding unnecessary journaling operations while maintaining data integrity when the probability indicates potential conflicts.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent applies partial journaling only when the calculated probability of read-before-write conflicts exceeds a threshold. Instead of applying journaling universally to all write operations (excessive action), the system selectively applies it only where needed based on real-time probability assessment, thereby maintaining productivity while ensuring reliability.

Inventive Principle:
Principle #16Partial or excessive action

3Productivity

If normal cache processing is used for all write operations, then productivity is improved through faster processing, but reliability deteriorates under RTO and RPO constraints when read operations may access unwritten data

Engineering Contradiction:
Improvecache processing speedVSAvoiddata consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements a feedback mechanism where the system continuously monitors I/O patterns, calculates the probability of read-before-write conflicts, and uses this feedback to dynamically adjust processing mode. This feedback loop ensures that reliability is maintained by switching to journaling when probability indicates risk, while normally operating in faster cache processing mode to maintain productivity.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent performs preliminary probability calculation and risk assessment before executing write operations. By evaluating the likelihood of read-before-write conflicts in advance, the system can preliminarily determine whether to use journaling or normal cache processing, thereby preventing data consistency issues while optimizing for speed when safe.

Inventive Principle:
Principle #10Preliminary action

4Reliability

If write journals are used to track all write operations, then reliability is improved for recovery purposes, but loss of substance increases due to space consumption

Engineering Contradiction:
Improverecovery capabilityVSAvoidcache space
Core Design Contradiction:
ReliabilityVSLoss of substance

Solution Approach 1:

The patent changes the space consumption parameter by transitioning from universal journaling to selective journaling based on probability thresholds. The system only allocates journal space when the calculated probability of read-before-write conflicts exceeds a threshold, thereby reducing overall space consumption while maintaining recovery capability when needed.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent treats journal entries as temporary, disposable structures that are created only when necessary for reliability and can be discarded once the write operation completes or the probability risk subsides. This approach minimizes long-term space consumption while providing recovery capability during critical periods.

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

Data Source

PatentUS10809918B2Cache performance on a storage system
Publication Date: 2020.10.20 EMC IP HLDG CO LLC
  • US10809918B2 patent drawing
  • US10809918B2 patent drawing
  • US10809918B2 patent drawing

AI summary

Options for handling write operations may be selected based on a determined probability that a read operation for a portion of data will occur while the data portion is still in an I/O cache as a result of a write operation. As used herein, a “read-after-write event (“RAW”) is an occurrence of a read operation for a portion of data while the data portion is still in an I/O cache as a result of a write operation. The probability of a RAW may be determined by applying Bayesian inference, and may include applying exponential smoothing to calculations made on historical I/O information so that more recent I/O events have greater weight in determining RAW probability. Based on the determined RAW probability, write data may either be journaled in a write journal or written to a cache slot and de-staged to a physical storage device as part of write-in-place processing.