Dual Controller Storage Cache Data Recovery
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In storage systems, transferring write data from a host computer to a cache area without involving a buffer area can lead to difficulties in maintaining user data integrity when failures occur, such as disconnections, as suspended data transfers can result in incomplete writes and data loss.
Innovation Solution
A storage system configuration with dual controllers and cache areas that manage suspended states and perform data copying between them to ensure data integrity, allowing for recovery and completion of write operations even in the presence of failures.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If write data is transferred directly to the cache area without involving the buffer area, then transfer efficiency is improved, but data integrity cannot be maintained when transfer is suspended due to failure
Solution Approach 1:
The patent implements a dual-cache area configuration where write data is simultaneously stored in both a first cache area and a second cache area. When a failure occurs during transfer, the system can recover by copying data from the first cache area to the second cache area (or vice versa), ensuring data integrity without requiring buffer area involvement for the initial transfer.
Solution Approach 2:
The system performs preliminary data storage in the first cache area before potential failure occurs. By having data already stored and marked with a suspended state indicator, the system can immediately recover after failure without data loss, maintaining both direct transfer efficiency and data integrity.
2Device complexity
If the buffer area is eliminated from the data transfer path, then hardware complexity is reduced, but the ability to handle suspended transfers is worsened
Solution Approach 1:
The patent merges the functions of the buffer area and cache area by using cache areas to perform both caching and temporary storage during suspended transfers. This eliminates the need for a separate buffer area, reducing hardware complexity while maintaining failure handling capability through the dual-cache configuration.
Solution Approach 2:
The cache areas are designed to serve multiple functions: normal data caching, temporary storage during suspended transfers, and data recovery sources. This multi-functionality eliminates the need for dedicated buffer area hardware while preserving the ability to handle suspended transfers gracefully.
3Speed
If write data is stored in the cache area without buffer area involvement, then data transfer speed is improved, but data loss risk increases when transfer is suspended
Solution Approach 1:
The patent uses a copying mechanism where write data is stored in both the first cache area and second cache area simultaneously. When transfer is suspended, the system can recover by copying data from one cache area to the other, ensuring no data loss while maintaining high transfer speed through direct cache access.
Solution Approach 2:
The system prepares for potential failure by maintaining redundant copies of write data in both cache areas before failure occurs. This beforehand cushioning ensures that even if transfer is suspended, the data is protected against loss through the redundant storage and recovery mechanism.
Data Source
AI summary
In a storage system, first and second controllers have respective first and second buffer and cache areas. The first controller stores write data in accordance with a write request in the first cache area without involving the first buffer area and to transfer the stored write data to the second cache area without involving the second buffer area. The first controller is configured to determine which of the first and second cache areas is to be used as a copy source and to be used as a copy destination depending on whether the storing of the first write data in the first cache area had been successful or on whether the transfer of the write data from the first cache area to the second controller had been successful, and by copying data from the copy source to the copy destination, recovers data in an area related to a transfer failure.


