Dynamic Page Cache Write Logging for Storage Durability

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Block-based storage systems face challenges in managing high I/O demands, leading to latency and durability issues when write requests exceed their capacity, as they lack effective monitoring and logging mechanisms to preserve data integrity in case of system failures.

Innovation Solution

Implementing page cache write logging at storage nodes to selectively log and recover write requests, dynamically modifying durability properties based on incoming write request rates, and trimming log entries to maintain performance and durability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If page cache write logging is enabled for all data volumes, then data durability is improved, but I/O latency increases due to additional logging overhead

Engineering Contradiction:
Improvedata durabilityVSAvoidI/O latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies local quality by enabling write logging selectively for individual data volumes based on their specific durability requirements and workload characteristics. Instead of uniformly enabling logging for all volumes, the system evaluates each volume's needs and applies logging only where necessary, thereby improving durability for critical volumes without imposing logging overhead on all I/O operations.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent implements dynamics by dynamically adjusting the durability properties and write logging configuration for data volumes based on changing workload conditions, I/O rates, and system state. The system can modify logging behavior in real-time, transitioning between different durability modes to optimize the balance between data protection and performance under varying conditions.

Inventive Principle:
Principle #15Dynamics

2Reliability

If write logging is enabled for high I/O rate volumes, then data integrity is improved, but storage system capacity to service requests decreases

Engineering Contradiction:
Improvedata integrityVSAvoidrequest service capacity
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies local quality by differentiating write logging treatment based on individual data volume characteristics, particularly their I/O rate patterns and durability requirements. High I/O rate volumes that require strong data integrity guarantees receive write logging, while volumes with lower requirements or different performance needs do not, thereby preserving storage system capacity for servicing requests while maintaining integrity where critical.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent applies partial action by implementing write logging only for the subset of data volumes that require enhanced durability, rather than applying it universally. This selective approach ensures that the additional logging overhead is incurred only where necessary for data integrity, leaving the majority of I/O operations to proceed without logging overhead and maintaining overall system productivity.

Inventive Principle:
Principle #16Partial or excessive action

3Productivity

If durability properties are dynamically modified based on write request rates, then storage performance is optimized, but system complexity increases

Engineering Contradiction:
Improvestorage performanceVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements feedback by continuously monitoring write request rates and system performance metrics, then using this information to dynamically adjust durability properties for data volumes. The system observes current workload conditions and automatically modifies logging behavior accordingly, creating a closed-loop control mechanism that optimizes performance based on actual system state without requiring manual intervention.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent applies self-service by enabling the storage system to automatically manage its own durability configuration based on observed workload patterns. The system autonomously determines when to enable or disable write logging for different data volumes based on their current I/O rates and performance needs, eliminating the need for external management and reducing operational complexity despite the dynamic behavior.

Inventive Principle:
Principle #25Self-service

Data Source

PatentEP3117331B1Dynamically modifying durability properties for individual data volumes
Publication Date: 2021.05.05 AMAZON TECH INC
  • EP3117331B1 patent drawingFigure 1
  • EP3117331B1 patent drawingFigure 2
  • EP3117331B1 patent drawingFigure 3

AI summary

A block-based storage system may implement dynamic durability adjustment for page cache write logging. A rate of incoming write requests for data volumes maintained at a storage node may be monitored. Based, at least in part, on the rate of incoming write requests, a dynamic modification to a durability property for a data volume may be made, such as enabling page cache write logging the data volume or disabling write logging for the data volume. When incoming write requests are received, a determination may be made as to whether page cache write logging for a particular data volume is enabled. For write requests with disabled page cache write logging, the page cache may be updated and the write request may be acknowledged without storing a log record describing the update in a page cache write log.