Extent Array Allocation Across Storage Devices
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing storage systems using RAID technology inefficiently utilize idle storage spaces by requiring extents at a given position in each stripe to be located on the same storage device, leading to underutilization of available storage capacity.
Innovation Solution
A method to generate an extent array where extents at a given position in each stripe can be located on different storage devices, allowing for more flexible allocation of idle extents across multiple storage devices, and creating an address mapping to associate extent identifiers with their indexes for efficient data access and reconstruction.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If extents at a given position in each stripe are required to be located on the same storage device, then data reconstruction reliability is improved, but storage space utilization deteriorates
Solution Approach 1:
The patent segments the extent array into multiple stripes, where each stripe contains extents from different storage devices. This segmentation allows the system to maintain data reconstruction capability (by having extents distributed across devices) while improving storage utilization (by allowing flexible allocation across available devices rather than requiring all extents at a position to be on the same device).
Solution Approach 2:
The patent introduces a new dimension in extent allocation by allowing extents at the same position in different stripes to be located on different storage devices. This dimensional change in the allocation strategy enables the system to overcome the limitation of traditional approaches where all extents at a given position must be on the same device, thereby improving storage utilization while maintaining reliability through distributed placement.
2Stability of the object's composition
If all stripes are allocated simultaneously on the same storage devices, then data access consistency is improved, but storage flexibility and utilization deteriorate
Solution Approach 1:
The patent implements dynamic extent allocation where stripes can be allocated on different storage devices based on available capacity and system state. This dynamic approach allows the system to adapt to changing storage conditions while maintaining data access consistency through proper address mapping, thereby improving both flexibility and utilization without sacrificing stability.
Solution Approach 2:
The patent changes the allocation parameters by allowing different stripes to have different storage device assignments. Instead of requiring all stripes to be allocated on the same devices, the system adjusts the allocation parameters dynamically, enabling better storage utilization while maintaining data access consistency through the address mapping mechanism that tracks extent locations.
Data Source
AI summary
In creating an extent array in a storage system, in response to receiving a request to generate an extent array using idle extents in storage devices, a width of an extent stripe is determined, and a size of the extent array is designated by the storage system. A first extent group and a second extent group are respectively selected from the storage devices based on the width to form a first extent stripe and a second extent stripe, and a first extent at a given position in the first extent group and a second extent at a given position in the second extent group are respectively located in different storage devices. Based on the first extent stripe and the second extent stripe, an address mapping representing the extent array is generated. The address mapping includes association between extent identifiers of extents and extent indexes of the extents.


