Storage Class Memory Cache Mirroring for Controller Failover
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
High availability storage systems face inefficiencies in write performance and system overhead due to cache mirroring between storage controllers, which consumes bandwidth and resources, leaving controllers with reduced availability for their own I/O requests.
Innovation Solution
Mirroring cache data from a storage controller to a storage class memory (SCM) device instead of another storage controller, allowing the SCM to store redundant data and enabling efficient bandwidth utilization and freeing up cache space for the storage controller's own I/O requests.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If cache data is mirrored between storage controllers, then data redundancy and reliability are improved, but bandwidth consumption and system overhead increase
Solution Approach 1:
The patent extracts the mirroring function from the inter-controller communication path and relocates it to local SCM devices. Each storage controller mirrors its cache data to a locally attached SCM device instead of transmitting over the inter-controller link, thereby eliminating bandwidth consumption while maintaining data redundancy and reliability.
2Reliability
If cache data is mirrored between storage controllers, then data redundancy is improved, but system overhead and processing resources increase
Solution Approach 1:
The patent extracts the mirroring operation from the storage controller's processing workload and assigns it to local SCM devices. The SCM devices independently manage their own cache mirroring, freeing storage controllers from the overhead of managing remote mirror copies while maintaining full data redundancy capabilities.
3Reliability
If cache space is reserved for mirroring, then data redundancy is maintained, but cache availability for I/O requests decreases
Solution Approach 1:
The patent extracts the mirroring function to local SCM devices, allowing storage controllers to use their entire cache capacity for I/O request processing. The SCM devices maintain separate mirror copies, so no cache space needs to be reserved at the controller level, maximizing cache availability and I/O performance.
4Reliability
If synchronous mirroring is performed between storage controllers, then data redundancy is ensured, but write performance is degraded
Solution Approach 1:
The patent extracts the synchronous mirroring operation from the critical write path and performs it locally at attached SCM devices. This eliminates the need for inter-controller communication during write operations, ensuring data redundancy without degrading write performance, as the mirroring occurs in parallel without blocking the main I/O path.
Data Source
AI summary
Systems and techniques are disclosed for the mirroring of cache data from a storage controller to a storage class memory (“SCM”) device. The storage controller receives a write request, caches the write data, and mirrors the write data to the SCM device instead of to a cache of another storage controller. The SCM device stores the mirrored data in the SCM device. The storage controller acknowledges the write to the host. If the storage controller later fails, an alternate controller assumes ownership of storage volumes associated with the failed controller. Upon receipt of a new read request to the failed controller, the alternate controller checks the SCM device for a cache hit. If there is, the data is read from the SCM device; otherwise, it is read from the storage volume(s). The read data is cached at the alternate controller and then sent on to the requesting host.


