Multiform Persistence Abstraction for Data Access
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Developing applications that utilize multiform persistence mechanisms across disparate data stores is challenging due to the need for considerable investment in design and development, and existing tools like Gremlin require complex programming and configuration to interoperate with multiple data storage types.
Innovation Solution
A computer-implemented method for data access that classifies requests, identifies execution models for queries across multiple data stores, and monitors query execution to adapt and optimize data retrieval, allowing for flexible and efficient access to data stored in various formats and structures.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If applications are developed to utilize multiform persistence mechanisms across disparate data stores, then data access flexibility and versatility are improved, but design and development complexity increases considerably
Solution Approach 1:
The patent introduces an execution model as an intermediary layer between applications and multiform data stores. This execution model includes a query translator that converts application queries into data store-specific queries, and a result assembler that consolidates results from multiple data stores. This mediator handles the complexity of interfacing with different data store types, allowing applications to access diverse persistence mechanisms without directly managing their individual complexities.
Solution Approach 2:
The execution model is designed as a universal interface that can work with multiple types of data stores simultaneously. It provides a single point of access that translates a unified query language into various data store-specific queries, enabling one system to serve multiple functions across different persistence technologies without requiring separate access logic for each data store type.
2Adaptability or versatility
If existing tools like Gremlin are used to interoperate with multiple data storage types, then data access capability is improved, but programming and configuration complexity increases
Solution Approach 1:
The execution model incorporates automatic query translation and result assembly capabilities that perform their functions without manual intervention. The system automatically determines which data stores to query, translates queries appropriately, and assembles results based on the original application request, eliminating the need for developers to manually configure complex multi-data store access patterns.
Solution Approach 2:
The execution model serves as a mediator between the application and multiple data stores, handling all the complexity of interoperability. It provides a simplified interface that automatically manages query translation, data store selection, and result consolidation, making multi-data store access as easy as issuing a single query without requiring developers to understand or configure the underlying complexity.
3Speed
If applications are coupled to specific data stores for efficient access, then data retrieval speed is improved, but adaptability to different data storage types deteriorates
Solution Approach 1:
The system segments the data access functionality into distinct components: the execution model, query translator, and result assembler. Each data store can be optimized independently for speed while maintaining its own access patterns, and the execution model coordinates these segmented access operations. This allows each data store to operate at optimal speed for its specific type while the overall system maintains adaptability across different storage types.
Solution Approach 2:
The execution model dynamically selects and configures access strategies based on the specific data store types being queried and the requirements of each request. It can adaptively choose between different query translation approaches and result assembly methods to optimize performance for each specific scenario, maintaining both speed and adaptability.
Data Source
AI summary
A computer implemented method of data access to data stored in one or more data stores includes receiving a request to retrieve data from the one or more data stores; extracting characteristics of the request to classify the request according to a request classification; identifying a model for execution of one or more queries to one or more data stores; executing the one or more queries according to the model to formulate a response to the request, wherein the model for execution is identified based on a class of the request and includes an identification of one or more data stores to which the one or more queries are to be directed to formulate the response; and monitoring execution of one or more queries for a class of request and revising the model in accordance with predetermined criteria.


