Unified Database System with Distributed Log for Cross-DB Transactions
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing database systems face challenges in efficiently managing and coordinating transactions across different database types, such as in-memory relational databases and disk-based databases, which often require complex coordination and separate processing, limiting concurrent access and manipulation of data.
Innovation Solution
A distributed log is used to log changes from database operations across both database types, allowing a single query to access and manipulate data, with transaction managers coordinating transactions and maintaining data consistency through commit and abort processes, enabling seamless interaction between in-memory and disk-based databases.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If separate and distinct queries are used to access data within different database types, then data access within each database type is straightforward, but the complexity of system architecture increases and concurrent access efficiency deteriorates
Solution Approach 1:
The patent combines multiple database types (relational, document, key-value, column-family) into a single unified database system that can be accessed through a single query interface. The unified query processor handles different database types transparently, eliminating the need for separate queries and reducing architectural complexity while maintaining ease of operation.
Solution Approach 2:
The unified database system provides universal access to multiple database types through a common query interface. The system can handle relational data, document data, key-value pairs, and column-family data all through the same query mechanism, making the system multi-functional and eliminating the need for type-specific access methods.
2Reliability
If separate transaction managers are used for different database types, then each database type can maintain its own transaction protocols, but coordination complexity increases and transaction processing efficiency deteriorates
Solution Approach 1:
The patent merges multiple transaction managers into a single unified transaction manager that handles transactions across all database types. This unified manager maintains transaction isolation and reliability while eliminating the coordination complexity that would arise from multiple separate transaction managers needing to communicate and synchronize.
3Adaptability or versatility
If data is stored across multiple databases of varying types, then data storage flexibility and capacity increase, but access efficiency and concurrent user performance deteriorate
Solution Approach 1:
The unified database system provides universal access to diverse data types through a single interface, maintaining storage flexibility while improving access efficiency. The system can store relational data, document data, key-value pairs, and column-family data all accessible through one query mechanism, enabling efficient concurrent access without sacrificing storage versatility.
4Reliability
If complex coordination is required for transactions across different database types, then data consistency can be maintained, but transaction processing time and overhead increase
Solution Approach 1:
By merging multiple database types and their transaction managers into a unified system, the patent eliminates the need for complex inter-database coordination. The unified transaction manager can maintain data consistency across all database types using a single, optimized transaction protocol, significantly reducing transaction processing time and overhead compared to coordinated multi-database transactions.
Data Source
AI summary
A query is received from a client that specifies at least one database operation implicating data within a first database and within a second database. The first database can have a first transaction manager and the second database can have a second transaction manager. Thereafter, a plurality of transactions responsive to the query are initiated to access the data within the first database and the second database. Execution of the plurality of transactions is then coordinated using the first transaction manager and the second transaction manager. All changes specified by the at least one database operation are logged in a distributed log in the first database including changes implicating data stored within the second database. The distributed log is configured such that it is accessible by both of the first transaction manager and the second transaction manager.


