Storage Controller Extent Pool Management for Thrashing Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In disk storage systems using thin provisioning for Extent Space Efficient (ESE) volumes, the frequent allocation and deallocation of extents can lead to thrashing, negatively impacting storage subsystem performance, especially with batch jobs that utilize temporary datasets.

Innovation Solution

Implementing a storage controller that maintains a primary and secondary allocation space, where extents in the secondary space are flagged as available for the extent pool but not immediately released, and only returned when needed or after a predetermined time, to prevent thrashing and optimize space allocation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If extents are frequently allocated and deallocated in thin provisioning for ESE volumes, then space utilization is optimized, but storage subsystem performance deteriorates due to thrashing

Engineering Contradiction:
Improvespace utilizationVSAvoidstorage subsystem performance
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent applies preliminary action by pre-allocating secondary allocation space and maintaining a pool of pre-available extents. When primary allocation space is exhausted, the system can immediately allocate from the secondary space without triggering frequent extent allocation/deallocation cycles. This advance preparation eliminates the thrashing that occurs with dynamic extent management, thereby maintaining storage subsystem performance while still achieving efficient space utilization through the thin provisioning model.

Inventive Principle:
Principle #10Preliminary action

2Quantity of substance

If extents are released immediately when no longer needed, then space availability for extent pool is improved, but system stability deteriorates due to indeterminate state of physical space

Engineering Contradiction:
Improvespace availabilityVSAvoidsystem stability
Core Design Contradiction:
Quantity of substanceVSStability of the object's composition

Solution Approach 1:

The patent applies local quality by creating different states for different portions of allocated space. The secondary allocation space is marked with a specific indicator (bit) that distinguishes it from normally allocated space. This local differentiation allows the system to track which extents are available for the extent pool without fully releasing them, providing both space availability and system stability by maintaining a known, deterministic state for these extents rather than leaving them in an indeterminate condition.

Inventive Principle:
Principle #3Local quality

3Productivity

If secondary allocation space is maintained, then thrashing is reduced and performance is improved, but device complexity increases due to additional space management

Engineering Contradiction:
Improvestorage performanceVSAvoidspace management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies merging by integrating the secondary allocation space management into the existing thin provisioning infrastructure. The secondary allocation space is managed as an extension of the primary allocation space, using the same extent pool and allocation mechanisms. The indicator bit is incorporated into the existing extent metadata structures. This unified approach allows the system to reduce thrashing and improve performance while minimizing the increase in device complexity by leveraging existing components rather than introducing entirely new management systems.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS10241681B2Management of physical extents for space efficient storage volumes
Publication Date: 2019.03.26 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10241681B2 patent drawing
  • US10241681B2 patent drawing
  • US10241681B2 patent drawing

AI summary

A storage controller maintains extent space efficient storage volumes in a primary allocation space and a secondary allocation space. An indicator is used to indicate that extents of the secondary allocation space are available for an extent pool, without releasing the extents from the secondary allocation space.