Heterogeneous RAID Stripe Allocation for Capacity Utilization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing RAID systems are inefficient when expanding storage arrays with disks of unequal sizes, as they require replacing legacy disks with larger ones, leading to wastefulness and inefficient use of capacity.
Innovation Solution
A method for efficiently allocating RAID stripes across a heterogeneous storage array by aggregating data chunks, determining free capacity across disks, selecting disks with the largest free capacity, generating parity chunks, and writing them to respective disks, allowing for dynamic stripe sizing and optimal use of available capacity.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If existing RAID techniques are used with heterogeneous disks, then data protection is provided, but disk capacity utilization is inefficient and legacy disks must be replaced with larger ones
Solution Approach 1:
The patent applies local quality by allowing different disks in the same RAID array to have different capacities. Instead of requiring uniform disk sizes, the system accepts heterogeneous disks and optimizes stripe allocation locally across each disk based on its individual capacity, thereby improving overall capacity utilization while maintaining data protection.
Solution Approach 2:
The system dynamically allocates RAID stripes across disks based on available capacity rather than using fixed, uniform allocations. This dynamic approach allows the RAID array to adapt to heterogeneous disk configurations and efficiently utilize varying capacities without requiring replacement of legacy disks.
2Quantity of substance
If legacy disks are replaced with larger disks to expand storage array, then storage capacity increases, but cost and waste increase
Solution Approach 1:
The patent changes the parameter of disk capacity uniformity to heterogeneity, allowing disks with different capacities to coexist in the same RAID array. This enables storage expansion by adding larger disks without replacing existing legacy disks, thereby increasing storage capacity while avoiding the costs and waste associated with replacement.
Solution Approach 2:
The system performs preliminary allocation of RAID stripes to disks based on their capacity characteristics before data writing occurs. This preliminary action optimizes the distribution of data and parity chunks across heterogeneous disks, ensuring efficient utilization of available capacity and enabling cost-effective storage expansion.
3Speed
If data is stored in clear for efficient reads, then read performance is improved, but security is compromised
Solution Approach 1:
The patent segments data into chunks and distributes them across multiple disks in a RAID array. This segmentation allows the system to maintain data in a clear state for efficient read access while distributing risk across multiple storage locations, and enables selective encryption of specific chunks or disks without impacting overall read performance.
Solution Approach 2:
The system introduces an intermediary layer (RAID controller/software) that manages data encryption and decryption operations. This intermediary enables security by encrypting data at rest while maintaining efficient read performance through optimized decryption processes and parallel access across multiple disks.
Data Source
AI summary
Described herein are embodiments of a process for efficiently allocating RAID stripes across an array of disks (e.g., SSDs). In some embodiments, the process can be used to allocate RAID stripes across a “heterogeneous” storage array (i.e., an array of different sized disks). Also described herein are embodiments of a storage system that utilize said processing.


