Virtual Persistence Platform Orchestration for Polyglot Database Complexity

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The increasing complexity of persistence architectures due to scalability requirements and diverse data usage patterns leads to a multitude of database systems, necessitating a wide range of skills and knowledge for developers to manage persistence effectively, as existing solutions do not adequately address the varied persistence needs of modern applications.

Innovation Solution

A virtual persistence platform that uses a high-level API to orchestrate persistence commands across various types of persistence stores by translating object-oriented constructs into store-specific instructions based on defined persistence requirements, abstracting the underlying database specifics and enabling efficient data retrieval and storage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If developers use multiple database systems to meet diverse persistence requirements, then persistence adaptability is improved, but device complexity increases

Engineering Contradiction:
Improvepersistence adaptabilityVSAvoidarchitecture complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces a virtual persistence layer as an intermediary between applications and underlying persistence stores. This virtual layer provides a unified object-oriented interface that translates persistence requirements into store-specific operations, eliminating the need for developers to directly interact with multiple database systems and their respective APIs. The virtual persistence layer acts as a mediator that resolves the complexity of polyglot persistence while maintaining adaptability to different storage requirements.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The virtual persistence layer provides a universal interface that can handle multiple persistence requirements through a single object-oriented framework. Instead of requiring separate database skills for different storage systems, the virtual layer unifies access patterns through common object-oriented constructs, enabling one interface to serve multiple persistence stores with different characteristics (relational, document, key-value, graph databases).

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

2Adaptability or versatility

If developers learn multiple database skills and languages to handle different persistence stores, then persistence versatility is improved, but ease of operation deteriorates

Engineering Contradiction:
Improvepersistence versatilityVSAvoiddeveloper skill requirement
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The virtual persistence layer changes the fundamental parameters of developer interaction by transitioning from store-specific SQL or NoSQL queries to a unified object-oriented interface. Developers interact with persistence stores through high-level object operations (create, read, update, delete) rather than learning multiple database languages. The system automatically handles the parameter translation between object-oriented operations and store-specific protocols.

Inventive Principle:
Principle #35Parameter changes

3Device complexity

If a single database system is used to simplify architecture, then device complexity is reduced, but persistence adaptability deteriorates

Engineering Contradiction:
Improvearchitecture simplicityVSAvoidpersistence adaptability
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The virtual persistence layer introduces dynamic routing capabilities that allow the system to adapt its behavior based on persistence requirements. The layer can dynamically select appropriate underlying stores and translate operations accordingly, enabling a single unified interface to access multiple persistence models dynamically rather than requiring static configuration of a single database system.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS9507607B2Virtual persistence
Publication Date: 2016.11.29 VMWARE INC
  • US9507607B2 patent drawing
  • US9507607B2 patent drawing
  • US9507607B2 patent drawing

AI summary

A virtual persistence platform is described that provides requirement-driven persistence store orchestration. Application developers can annotate program code with persistence properties and requirements, and a compiler component of the virtual persistence platform generates a persistence service level agreement (PSLA) that becomes attached to the application. After deployment and launch, the virtual persistence platform uses the PSLA to handle persistence commands from the application and perform persistence store orchestration.