Disk Storage Allocation for Virtual Machines

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional Hadoop deployments face limitations in providing quality of service guarantees across tenants due to lack of enforcement of resource constraints, leading to over-commitment of resources and low resource utilization, especially in multi-tenant scenarios where multiple jobs are executed concurrently.

Innovation Solution

The system allocates outer blocks of rotational disk storage to virtual machines associated with I/O intensive workloads, using logical block addressing to optimize storage allocation and enhance I/O throughput in a virtual server cluster environment, thereby ensuring efficient resource utilization and stronger security and resource isolation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If resources are over-committed to multiple tenants, then resource utilization appears high, but quality of service guarantees deteriorate and I/O throughput decreases

Engineering Contradiction:
Improveresource utilizationVSAvoidquality of service guarantee
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The patent applies local quality by allocating different disk blocks based on their radial position - outer blocks are preferentially allocated to I/O intensive workloads while inner blocks serve other purposes. This creates localized optimization where high-performance storage regions are dedicated to workloads that benefit most from them, ensuring quality of service guarantees while maintaining high overall resource utilization through differentiated allocation strategies.

Inventive Principle:
Principle #3Local quality

2Productivity

If outer blocks are allocated to I/O intensive workloads, then I/O throughput is enhanced, but storage allocation complexity increases

Engineering Contradiction:
ImproveI/O throughputVSAvoidstorage allocation complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system performs preliminary action by pre-identifying and pre-allocating outer blocks to I/O intensive workloads before actual I/O operations commence. The block allocation mechanism proactively assigns high-performance storage regions based on workload characteristics, eliminating the need for complex real-time dynamic allocation during I/O operations and simplifying the overall storage management complexity.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If resource constraints are not enforced, then multi-tenant flexibility is maintained, but resource isolation and security deteriorate

Engineering Contradiction:
Improvemulti-tenant flexibilityVSAvoidresource isolation
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent applies segmentation by dividing the storage resource pool into distinct segments - outer blocks are segmented and allocated to I/O intensive workloads while inner blocks remain available for other purposes. This segmentation enforces resource isolation between different tenant workloads, providing security guarantees while maintaining multi-tenant flexibility through differentiated access to appropriate storage segments based on workload requirements.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10255005B2Systems and methods of disk storage allocation for virtual machines
Publication Date: 2019.04.09 VMWARE INC
  • US10255005B2 patent drawing
  • US10255005B2 patent drawing
  • US10255005B2 patent drawing

AI summary

A method for allocating storage for a virtual machine includes receiving a request to allocate a block of disk storage on a physical disk to a virtual disk associated with the virtual machine. The method also includes identifying a plurality of available blocks on the physical disk, each of the plurality of available blocks defining a radial distance from a center axis of a platter of the physical disk. The method further includes determining which of the plurality of available blocks has a greatest radial distance from the center axis of the platter and, based on the determining, selecting an allocation block from the plurality of available blocks, the allocation block having the greatest radial distance from the center axis of the platter. The method also includes allocating the allocation block to the virtual machine.