Overlay Matrix for RAID Drive Relocation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing RAID systems incur overhead costs and resource utilization inefficiencies when adding new drives, as they require relocation of protection group members to create new protection groups, especially when fewer than the required number of new drives are added, which affects computational and memory resources used for servicing IOs from host servers.
Innovation Solution
The implementation of a RAID controller that organizes non-volatile drives into drive clusters with a G*G drive matrix and an overlay matrix, allowing for efficient relocation and addition of new drives by using the overlay matrix to redistribute RAID members within the drive matrix, minimizing data movement and resource usage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If new drives are added to increase storage capacity, then storage capacity is improved, but computational and memory resources are consumed for relocating protection group members
Solution Approach 1:
The patent divides the drive array into multiple drive clusters, each managed independently with its own drive matrix and overlay matrix. This segmentation allows relocation operations to be performed locally within each cluster without affecting the entire array, reducing the computational and memory resources required for protection group member relocation when new drives are added.
Solution Approach 2:
The patent pre-computes and stores overlay matrices that define optimal relocation patterns before drives are added. When new drives are introduced, the system uses the pre-computed overlay matrix to guide protection group member relocation, avoiding the need for real-time computational optimization and reducing resource consumption during the relocation process.
2Adaptability or versatility
If protection group members are relocated to create new protection groups, then new protection groups can be formed, but data movement and operational overhead increase
Solution Approach 1:
The overlay matrix serves as an intermediary data structure that maps existing drive positions to new drive positions during expansion. Instead of directly relocating protection group members through complex multi-step operations, the system uses the overlay matrix as a intermediary to compute and execute simple, direct relocation mappings, significantly reducing operational overhead and time.
Solution Approach 2:
The patent changes the organizational parameters of the drive array by introducing drive clusters with G subdivisions, where G equals the number of data members and parity members. This parameter change enables systematic relocation patterns that minimize data movement distance and operational complexity when creating new protection groups.
3Adaptability or versatility
If more drives are added to enable new protection groups, then storage flexibility is improved, but computational overhead for relocation increases
Solution Approach 1:
By segmenting the drive array into independent clusters with their own drive matrices, the system reduces the computational overhead associated with relocation. Each cluster can be managed and relocated independently, allowing the system to accommodate varying numbers of new drives without increasing the computational complexity of the entire array management process.
Data Source
AI summary
An initial drive cluster of G drives with G subdivisions is represented by a G*G drive matrix, where G equals the number of data and parity members in the RAID level implemented on the drive cluster. A corresponding G×G overlay matrix is created in which a value at row R, column C equals a remainder of (R+C−2) divided by G, such that there are G distinct values in a range of 0 to G−1. Responsive to addition of N new drives to the drive cluster, the N new drives are added to the drive matrix and the overlay matrix is used to select and relocate RAID members within the drive matrix so that new RAID groups can be created.


