Common Data Model for Relational and Object-Oriented Databases
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing systems face performance issues and compatibility challenges when mapping data from object-oriented databases to relational databases, leading to inefficiencies and limitations in using multiple database types.
Innovation Solution
A method for generating a common data model that involves receiving a query in a controller, determining if a relational database has a field associated with an object's class, and adding a column if necessary, along with data modeling techniques such as partitioning and indexing to optimize data storage and retrieval across relational and object-oriented databases.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If object databases are used to store data, then data storage flexibility and object-oriented compatibility are improved, but data retrieval speed and system performance deteriorate
Solution Approach 1:
The patent introduces an intermediary layer (mapping mechanism) between object-oriented applications and relational databases. This intermediary translates object-oriented data models into relational database structures, allowing applications to interact with databases using object-oriented concepts while the underlying relational database maintains high retrieval speed. The mapping layer handles the conversion transparently, so applications experience object-oriented compatibility without sacrificing performance.
2Speed
If relational databases are used for data storage, then data retrieval speed and system performance are improved, but compatibility with object-oriented programming languages and software design deteriorate
Solution Approach 1:
The patent creates a virtual copy or mapping of the object-oriented data model within the relational database context. Instead of requiring applications to directly interact with relational structures, the system creates a mapped representation that mirrors object-oriented concepts (classes, objects, inheritance) using relational tables and queries. This copying approach allows relational databases to maintain their performance advantages while presenting an object-oriented interface to applications.
3Adaptability or versatility
If data mapping between object-oriented and relational databases is implemented, then compatibility between the two systems is improved, but system complexity and performance overhead increase
Solution Approach 1:
The patent implements a universal mapping framework that can handle multiple object-oriented data models and map them to various relational database schemas using a common approach. The mapping mechanism is designed to be multi-functional, supporting different data types, relationships, and object-oriented features through a unified translation layer. This universality reduces the need for separate mapping solutions for each database combination, thereby managing complexity while maintaining broad compatibility.
4Adaptability or versatility
If data mapping between object-oriented and relational databases is implemented, then compatibility between the two systems is improved, but performance overhead and efficiency loss occur
Solution Approach 1:
The patent performs data mapping transformations in advance or during data insertion operations rather than during query execution. By pre-translating object-oriented data structures into relational formats when data is first stored, the system avoids the performance overhead of real-time mapping during data retrieval. This preliminary action ensures that query operations can execute directly on pre-mapped relational data, maintaining efficiency while achieving compatibility.
Data Source
AI summary
In one embodiment, a computer-implemented method comprises receiving a query in a controller. A data store stores data in a relational database. The database comprises a plurality of fields and a plurality of data elements. Each field is associated with a portion of the data elements. The database is arranged as at least one table, and the query identifies data of an object to be stored in a data set. The method further comprises determining, by the controller, whether the relational database includes a field associated with a class of the object; and if the relational database does not include a field associated with the class of the object, adding a column to the relational database, the added column having a field corresponding to the class. The method further comprises adding the data of the object to the relational database.


