Declustered Parity Group Resizing for Balanced RAID Rebuilds
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional RAID group resizing methods face challenges in balancing I/O load across disks during reconstruction, especially when adding or removing mass storage devices, leading to sub-optimal read performance and uneven distribution of parity groups.
Innovation Solution
A storage server dynamically resizes an array of mass storage devices by adding or removing devices while redistributing data blocks to maintain even parity group distribution and minimize the number of data blocks moved, ensuring balanced load across new devices.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If mass storage devices are added to increase storage capacity, then storage capacity is improved, but I/O load balance deteriorates
Solution Approach 1:
The system dynamically adjusts the distribution of data blocks across mass storage devices when devices are added or removed. Instead of using a static stripe width, the system recalculates and redistributes data blocks to maintain balanced I/O load across the array, allowing the configuration to adapt to changing storage capacity requirements.
Solution Approach 2:
The system changes the distribution parameters of data blocks across the mass storage array when the number of devices changes. By modifying how data blocks are allocated and distributed rather than changing the physical stripe width, the system maintains optimal I/O performance while accommodating varying storage capacities.
2Productivity
If data blocks are redistributed to balance I/O load, then I/O performance is improved, but the number of data blocks to be moved increases
Solution Approach 1:
The system performs partial redistribution of data blocks rather than complete reallocation. When mass storage devices are added or removed, only the necessary subset of data blocks is moved to achieve balanced I/O load, rather than redistributing the entire data set, thereby reducing migration time and overhead.
Solution Approach 2:
The system performs preliminary calculations to determine the optimal distribution of data blocks before actual migration begins. By pre-planning the redistribution strategy and identifying which specific data blocks need to be moved, the system minimizes unnecessary data movement and optimizes the rebalancing process.
3Quantity of substance
If stripe width is increased to add more devices, then storage capacity is improved, but reconstruction time increases
Solution Approach 1:
The system segments the mass storage array into multiple independent parity groups rather than using a single large stripe. Each parity group can be reconstructed independently, allowing parallel reconstruction operations that reduce overall reconstruction time while maintaining the ability to utilize multiple mass storage devices for increased capacity.
Solution Approach 2:
The system dynamically manages parity groups and their associated data blocks, allowing flexible allocation across mass storage devices. This dynamic management enables optimized reconstruction paths that minimize reconstruction time while accommodating varying storage capacities through adaptive data block distribution.
Data Source
AI summary
A storage server resizes an array of mass storage devices and distributes data blocks stored in the array of mass storage devices evenly in a declustered organization across the resized array of mass storage devices. Resizing the array of mass storage devices may include adding a new mass storage device to the array or removing a mass storage device from the array. During resizing a data block is moved from one mass storage device to another mass storage device to minimize the imbalance of parity groups shared by the new mass storage devices in the array, as well as minimize the number of data blocks to be moved to uniformly balance the load across the new mass storage device.


