Storage Array Slice Allocation Based on Anticipated Utilization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Storage arrays face performance constraints due to uneven distribution of load across physical resources and inefficient allocation of storage space, leading to underutilization of scarce resources and increased power consumption.
Innovation Solution
A method and system for allocating storage space in a storage array that selects slices based on anticipated system resource utilization, number of allocated slices, and distribution across buses, RAID groups, and logical units, optimizing performance and power usage through informed allocation policies.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If storage space is allocated without considering anticipated utilization, then allocation is simple and fast, but performance is limited due to uneven load distribution and resource underutilization
Solution Approach 1:
The system performs preliminary analysis of storage slice utilization patterns before allocating storage space. By anticipating which slices are likely to be heavily used based on historical data and access patterns, the system proactively distributes new allocations to balance future load rather than reacting to actual usage after allocation occurs.
Solution Approach 2:
The allocation system incorporates feedback mechanisms that continuously monitor actual utilization of storage slices and adjust future allocation decisions accordingly. The system learns from past usage patterns and refines its allocation strategy to better predict and prevent uneven load distribution.
2Quantity of substance
If all storage resources are made available, then storage capacity is maximized, but power consumption increases due to unnecessary resource activation
Solution Approach 1:
The system applies different quality characteristics to different storage slices based on their utilization patterns. Highly utilized slices maintain full accessibility and performance characteristics, while low-utilization slices can be optimized for power efficiency. This local differentiation allows the system to maximize capacity where needed while reducing power consumption where resources are underutilized.
Solution Approach 2:
The allocation system dynamically adjusts storage resource availability based on anticipated and actual utilization patterns. Rather than statically making all resources available, the system adapts its allocation strategy over time, activating additional storage capacity only when and where it is actually needed, thereby reducing overall power consumption while maintaining required storage capacity.
3Productivity
If storage is allocated based on current utilization patterns, then resource distribution is optimized, but response time increases due to analysis overhead
Solution Approach 1:
The system performs utilization pattern analysis in advance, during off-peak times or asynchronously, so that allocation decisions can be made quickly when requests arrive. By pre-computing predictions about which slices will be heavily used based on historical data, the system reduces the analysis overhead during actual allocation operations.
Solution Approach 2:
The system uses partial analysis of utilization patterns rather than comprehensive analysis of all possible scenarios. By focusing on the most significant factors and using simplified prediction models, the system achieves sufficient accuracy for optimal allocation without the time cost of exhaustive analysis, balancing responsiveness with optimization quality.
Data Source
AI summary
Systems, methods, and computer readable medium for allocating physical storage in a disk array are disclosed. According to one aspect, the subject matter described herein includes a method for allocating portions of storage area of a storage array. The method includes receiving, from a requesting entity, a request for allocation of a portion of storage area of a storage array, the storage array comprising a plurality of storage entities and a plurality of data buses for transferring data to and from the plurality of storage entities, wherein the plurality of storage entities are organized into at least one logical unit, wherein each logical unit is subdivided into at least one slice. In response to receiving the request for allocation, at least one slice is selected for allocation for use by the requesting entity, based on anticipated system resource utilization during access to data to be stored in the storage array.


