Distributed RAID Spare Block Allocation for Rebuild Capacity
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional RAID techniques face challenges in ensuring sufficient rebuild capacity in distributed RAID arrangements where the total number of blocks per stripe is less than the total number of storage devices, often requiring complex calculations or excessive spare capacity allocation, leading to inefficiencies and performance degradation.
Innovation Solution
The proposed solution involves reserving spare blocks at the storage device level, where each device is designated as a spare for multiple others, ensuring that the rebuild process has sufficient capacity by sharing reserved blocks across devices, thus eliminating the need for complex calculations and minimizing waste capacity.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If conventional RAID techniques are used in distributed RAID arrangements, then rebuild capacity may be sufficient, but complex calculations are required to determine spare capacity allocation
Solution Approach 1:
The patent changes the parameter of spare capacity allocation from a calculated value to a fixed value based on stripe width. Specifically, each storage device reserves exactly 'w' spare blocks where 'w' is the stripe width, eliminating the need for complex calculations while ensuring sufficient rebuild capacity.
Solution Approach 2:
The patent segments the rebuild capacity requirement by allocating spare blocks at the individual storage device level rather than calculating system-wide allocation. Each device independently reserves 'w' spare blocks, and the system guarantees that at least one device will have available capacity when needed.
2Reliability
If excessive spare capacity is allocated to each storage device, then sufficient rebuild capacity is guaranteed, but storage device capacity is wasted and system performance degrades
Solution Approach 1:
The patent optimizes the spare capacity parameter from excessive allocation to precise allocation. By setting each device's spare blocks equal to the stripe width 'w', the system achieves the minimum necessary capacity guarantee without waste, as proven by the mathematical analysis in the patent.
Solution Approach 2:
The patent applies partial action by allocating exactly the minimum necessary spare capacity ('w' blocks per device) rather than excessive capacity. This partial allocation is sufficient to guarantee rebuild completion while maximizing usable storage capacity and maintaining system performance.
3Quantity of substance
If distributed RAID arrangement is used with more storage devices than blocks per stripe, then storage capacity is increased, but ensuring sufficient rebuild capacity becomes unduly difficult
Solution Approach 1:
The patent changes the allocation parameter from complex system-wide calculations to a simple per-device parameter based on stripe width. Each device reserves 'w' spare blocks where 'w' is the number of blocks per stripe, providing a universal solution that works for any distributed RAID configuration regardless of the number of devices.
Solution Approach 2:
The patent creates a universal spare capacity allocation rule that applies to all distributed RAID arrangements regardless of the number of storage devices or stripe configuration. The rule 'reserve w spare blocks per device' is universally applicable and guarantees sufficient rebuild capacity in all cases.
Data Source
AI summary
A storage system comprises a plurality of storage devices, and is configured to establish a redundant array of independent disks (RAID) arrangement comprising a plurality of stripes, with each of the plurality of stripes comprising a plurality of blocks, the blocks being distributed across multiple ones of the storage devices. In conjunction with establishment of the RAID arrangement, the storage system is further configured, for each of the plurality of stripes, to designate a particular one of the storage devices as a spare storage device for that stripe, and for each of the storage devices, to determine numbers of the stripes for which that storage device is designated as a spare device for respective ones of the other storage devices. A particular number of spare blocks is reserved for each of the storage devices based at least in part on its determined numbers of the stripes.


