Redundant Write Caching with Dual Non-Volatile Solid-State Storage
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current caching systems rely on volatile DRAM, leading to data loss during power failures and require battery backup, which consumes power, reduces reliability, and increases costs.
Innovation Solution
Implementing a method for redundant write caching using two non-volatile solid-state storage caches that share a logical address space, with data written to both caches and cleared based on a deterministic protocol, ensuring data redundancy and availability without decreasing storage capacity.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If volatile DRAM is used for caching, then access speed is improved, but data reliability deteriorates due to data loss during power failures
Solution Approach 1:
The patent changes the fundamental parameter of memory volatility from volatile (DRAM) to non-volatile (solid-state storage). This parameter change allows the cache to maintain data without power, resolving the contradiction between fast access and data retention during power failures.
Solution Approach 2:
The patent implements a dual-cache architecture where data is written to both a first cache and a second cache. This copying mechanism provides redundancy, ensuring that if one cache loses data, the other retains it, thereby improving data reliability while maintaining fast access speeds.
2Reliability
If battery backup is added to prevent data loss, then data reliability is improved, but power consumption increases and device complexity worsens
Solution Approach 1:
The patent extracts and removes the battery backup component from the system by using non-volatile solid-state storage for caching. This eliminates the need for additional power consumption and complexity associated with battery backup systems while maintaining data reliability.
Solution Approach 2:
The patent replaces the expensive and complex battery backup system with simpler non-volatile solid-state storage devices. These storage devices provide reliable data retention without requiring external power sources, effectively replacing the battery backup function with a more efficient technology.
3Reliability
If battery backup is added to prevent data loss, then data reliability is improved, but device complexity and cost increase
Solution Approach 1:
The patent removes the battery backup subsystem entirely, replacing it with non-volatile solid-state storage that inherently provides data retention without additional components. This simplifies the overall system architecture and reduces complexity.
Solution Approach 2:
The patent merges the cache function with non-volatile storage functionality, eliminating the need for separate battery backup hardware. This integration reduces the number of components and simplifies the system while maintaining data reliability.
4Reliability
If redundant write caching is implemented with two caches, then data redundancy is improved, but storage capacity utilization may worsen
Solution Approach 1:
The patent segments the cache into two separate caches (first cache and second cache) that share a common logical address space. This segmentation provides redundancy while the shared address space allows efficient capacity utilization, as data can be read from either cache without requiring dedicated separate storage spaces.
Data Source
AI summary
An apparatus, system, and method are disclosed for redundant write caching. The apparatus, system, and method are provided with a plurality of modules including a write request module, a first cache write module, a second cache write module, and a trim module. The write request module detects a write request to store data on a storage device. The first cache write module writes data of the write request to a first cache. The second cache write module writes the data to a second cache. The trim module trims the data from one of the first cache and the second cache in response to an indicator that the storage device stores the data. The data remains available in the other of the first cache and the second cache to service read requests.


