VM Datastore Segregation by I/O Access Pattern

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In virtual machine environments, assigning applications with different I/O data access patterns to the same datastore leads to decreased performance, making it challenging to manage application performance efficiently due to the dynamic and large-scale nature of these environments.

Innovation Solution

Collecting data on input-output operations, analyzing it to identify data access patterns, and assigning applications to separate datastores based on these patterns, with the option to migrate data if necessary to segregate random I/O and sequential I/O applications, ensuring they are on independent datastores.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If applications with different I/O data access patterns are assigned to the same datastore, then device complexity is reduced and resource utilization is improved, but application performance deteriorates due to I/O conflicts

Engineering Contradiction:
Improvedatastore management complexityVSAvoidapplication performance
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent segments applications based on their I/O access patterns (sequential vs. random) and assigns them to different datastores. This segmentation resolves the contradiction by separating applications that would otherwise conflict on the same datastore, thereby maintaining performance while still using a manageable number of datastores through automated classification and assignment.

Inventive Principle:
Principle #1Segmentation

2Productivity

If manual tracking and assignment of VMs to datastores is performed to avoid I/O conflicts, then application performance is maintained, but the difficulty of operation increases significantly in large-scale dynamic environments

Engineering Contradiction:
Improveapplication performanceVSAvoiddatastore assignment management
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The system implements self-service by automatically monitoring I/O access patterns of applications and dynamically assigning or migrating them to appropriate datastores without manual intervention. This automated self-management maintains performance optimization while eliminating the operational burden of manual tracking in large-scale dynamic virtual machine environments.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent employs feedback mechanisms by continuously monitoring I/O access patterns and using this information to make real-time assignment decisions. The system collects performance data, analyzes access patterns, and adjusts datastore assignments accordingly, creating a closed-loop control system that maintains optimal performance without manual intervention.

Inventive Principle:
Principle #23Feedback

3Productivity

If applications are segregated by data access pattern onto separate datastores, then application performance is improved, but device complexity increases due to multiple datastores

Engineering Contradiction:
Improveapplication performanceVSAvoiddatastore architecture
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent creates datastore categories that serve multiple functions: sequential I/O datastores handle sequential access workloads, random I/O datastores handle random access workloads, and some datastores can serve both purposes. This multi-functionality approach allows performance optimization through segregation while reducing the total number of specialized datastores needed, thereby limiting the increase in system complexity.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS9313263B2Assignment of applications in a virtual machine environment based on data access pattern
Publication Date: 2016.04.12 VMWARE INC
  • US9313263B2 patent drawing
  • US9313263B2 patent drawing
  • US9313263B2 patent drawing

AI summary

Techniques for assigning applications to datastores in a virtual machine environment are disclosed. In an embodiment, applications exhibiting different I/O data access patterns are assigned to datastores by collecting data related to the input-output operations performed by the applications, analyzing the collected data to identify corresponding data access patterns, and assigning applications to datastores based on the identified data access patterns. In this way, applications can be segregated by data access pattern onto separate datastores. For example, random I/O apps and sequential I/O apps can be assigned to different datastores. Additionally, if random I/O apps are found to be comingled with sequential I/O apps on the same datastore, then data associated with the applications can be migrated as necessary to achieve segregation. In an embodiment, random I/O apps and sequential I/O apps are segregated onto datastores that rotate independent of each other.