Performance Virtualization Appliance for Storage Tiering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Block-level storage in disk storage arrays is slow compared to DRAM and Flash memory, with significant latency and throughput limitations, necessitating a solution to enhance performance and meet Service Level Agreements (SLAs) for storage access.

Innovation Solution

A Performance Virtualization Appliance (PVA) dynamically allocates Flash and DRAM resources to storage volumes based on SLA requirements, using a virtualization controller to monitor and adjust I/O operations, latency, and throughput, thereby optimizing access speeds by prefetting data into faster memory tiers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If disk storage array is used for block-level storage, then storage capacity is achieved, but access speed and latency are poor

Engineering Contradiction:
Improveaccess speedVSAvoidlatency
Core Design Contradiction:
SpeedVSLoss of time

Solution Approach 1:

The storage system is segmented into multiple tiers with different performance characteristics. The patent divides storage into hot data (frequently accessed), warm data (moderately accessed), and cold data (rarely accessed), placing them in different storage media (DRAM, Flash, disk) to optimize both speed and capacity for each segment

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A performance virtualization appliance acts as an intermediary between servers and disk storage arrays. This appliance includes a virtualization controller that dynamically manages data placement and caching across multiple storage tiers, mediating between the high-speed requirements of servers and the high-capacity but slow disk storage arrays

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If more Flash and DRAM resources are allocated to storage volumes, then access performance is improved, but resource allocation complexity increases

Engineering Contradiction:
Improvestorage throughputVSAvoidresource allocation complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system implements dynamic resource allocation where the virtualization controller continuously monitors access patterns and automatically adjusts data placement and caching strategies. Resource allocation is not static but adapts in real-time based on changing workload requirements, optimizing throughput without manual intervention

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The performance virtualization appliance incorporates feedback mechanisms that monitor storage access patterns, performance metrics, and SLA compliance. This feedback drives automatic adjustments to data placement, caching, and resource allocation, reducing complexity by using closed-loop control rather than static configuration

Inventive Principle:
Principle #23Feedback

3Quantity of substance

If disk storage array capacity is increased, then storage capacity is improved, but access speed deteriorates

Engineering Contradiction:
Improvestorage capacityVSAvoidaccess speed
Core Design Contradiction:
Quantity of substanceVSSpeed

Solution Approach 1:

Different portions of storage data are assigned different quality characteristics based on access patterns. Frequently accessed data (hot data) is placed in high-speed storage media like DRAM and Flash, while less frequently accessed data (cold data) is placed in high-capacity but slower disk storage, giving each local portion the appropriate speed-capacity balance

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS8285961B2Dynamic performance virtualization for disk access
Publication Date: 2012.10.09 INNOVATIONS IN MEMORY LLC
  • US8285961B2 patent drawing
  • US8285961B2 patent drawing
  • US8285961B2 patent drawing

AI summary

A storage control system includes performance monitor logic configured to track performance parameters for different volumes in a storage array. Service level enforcement logic is configured to assign target performance parameters to the different volumes and generate metrics for each of the different volumes identifying how much the performance parameters change for the different volumes responsive to changes in the amounts of tiering media allocated to the different volumes. Resource allocation logic is configured to allocate the tiering media to the different volumes according to the performance parameters, target performance parameters, and metrics for the different volumes.