Paravirtual Storage Layer for Persistent Application Data Placement

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Stateful applications in distributed storage systems do not fully benefit from data protection services provided by underlying shared storage systems due to unawareness of replica correlations, leading to reduced fault tolerance when both systems replicate data independently.

Innovation Solution

Implementing a paravirtual storage layer for container orchestrators like Kubernetes, which allows persistent applications to use direct-attach storage, enabling direct access to local storage devices and bypassing the virtual SAN software stack, thus allowing applications to control data placement and replication independently.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If stateful applications use underlying shared storage replication services, then data protection is provided, but fault tolerance is reduced due to unawareness of replica correlations

Engineering Contradiction:
Improvefault toleranceVSAvoiddata placement management
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the data placement and replication control from the shared storage system and transfers it to the application layer. Applications directly manage their own replicas on local storage devices, eliminating the storage system's unawareness of replica correlations and enabling proper fault tolerance while maintaining simplicity through application-autonomous management

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Stateful applications autonomously manage their own data replication and placement without relying on the shared storage system's replication services. Each application independently places replicas on local storage devices, ensuring proper fault tolerance while simplifying the overall system architecture by eliminating unnecessary dependency on storage system replication

Inventive Principle:
Principle #25Self-service

2Adaptability or versatility

If applications perform independent replication without awareness of storage system replication, then application autonomy is improved, but redundant data copies increase

Engineering Contradiction:
Improveapplication autonomyVSAvoiddata copies
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent implements feedback mechanisms where applications receive information about storage system capabilities and existing data placements. This feedback enables applications to make informed replication decisions, avoiding redundant copies while maintaining autonomy in managing their own data protection strategies

Inventive Principle:
Principle #23Feedback

3Speed

If applications use direct-attach storage, then performance is improved through direct access, but integration with shared storage system is reduced

Engineering Contradiction:
Improvedata access speedVSAvoidstorage system integration
Core Design Contradiction:
SpeedVSAdaptability or versatility

Solution Approach 1:

The patent segments storage access paths into direct-attach storage for performance-critical applications and shared storage for collaborative workloads. This segmentation allows each storage type to serve its specific purpose optimally while maintaining overall system integration through a unified virtualization layer that manages both access methods

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11900141B2Direct access storage for persistent services in a distributed storage system
Publication Date: 2024.02.13 VMWARE INC
  • US11900141B2 patent drawing
  • US11900141B2 patent drawing
  • US11900141B2 patent drawing

AI summary

An example virtualized computing system includes a cluster of hosts having a virtualization layer executing thereon and configured to manage virtual machines (VMs); first and second local storage devices in a first host, the first local storage device being part of a virtual storage area network (vSAN) and the second local storage device being exclusive of the vSAN; and an orchestration control plane, integrated with the virtualization layer and including a master server managing state of the orchestration control plane, the state including objects representing the hosts and the VMs, the orchestration control plane deploying a persistent application executing on a first VM, the persistent application storing persistent data on the second local storage device; and a virtualization management server configured to manage the cluster and to cooperate with the orchestration control plane to modify the state to notify the master server of a virtual infrastructure (VI) event.