Primary Storage Controller Parity Calculation for Secondary Mirroring
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current storage technologies face inefficiencies in mirroring data updates from a primary storage controller to a secondary storage controller, particularly in environments with multiple processor cores and RAID arrays, where calculating parity data is resource-intensive and requires reading previous versions of data.
Innovation Solution
The primary storage controller calculates new primary parity data and difference data from modified data, which is then sent to the secondary storage controller to calculate new secondary parity data, optimizing operations by avoiding the need to read previous versions of data, especially when both controllers have the same configuration.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the secondary storage controller reads previous versions of data to calculate parity data, then the parity calculation can be performed, but the computational resources and time required increase significantly
Solution Approach 1:
The primary storage controller pre-calculates difference data representing changes between old and new data blocks before mirroring. This preliminary computation allows the secondary storage controller to calculate parity using only the difference data and existing parity, rather than reading and processing entire previous data versions, thus improving efficiency while maintaining reliability
Solution Approach 2:
The invention extracts only the essential information needed for parity calculation - specifically the difference data representing changes - and transmits this extracted information to the secondary storage controller. This eliminates the need to transfer or read complete previous data versions, reducing computational overhead and improving processing speed
2Reliability
If the primary storage controller sends all modified data to the secondary storage controller, then the secondary controller can calculate parity, but the data transmission volume and processing overhead increase
Solution Approach 1:
The primary storage controller extracts only the difference data representing changes between old and new data blocks, and transmits this compact representation to the secondary storage controller. This extracted difference data contains only the essential information needed for parity calculation, significantly reducing transmission volume compared to sending complete data blocks
Solution Approach 2:
The invention transforms the data representation from complete data blocks to difference data (change representations). This parameter change in data format allows the secondary controller to reconstruct necessary information for parity calculation using fewer bits, reducing transmission volume while maintaining data integrity and mirroring consistency
Data Source
AI summary
Provided are a computer program product, system, and method for mirroring information on modified data from a primary storage controller to a secondary storage controller for the secondary storage controller to use to calculate parity data. New primary parity data is calculated from modified data for a primary group of tracks in the primary storage and difference data from the modified data and a pre-modified version of the modified data. The difference data and one of the modified data and the new primary parity data are sent to the secondary storage controller to cause the secondary storage controller to write new secondary parity data and the modified data to a secondary group of tracks at the secondary storage. The modified data and the new primary parity data are written to the primary group of tracks in the primary storage.


