Generic Database Manipulator for Atomic Transaction Management
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current data management systems in enterprise environments face challenges with data consistency errors due to concurrent and potentially conflicting requests from multiple users, requiring extensive coding for concurrency handling and varying database support, which complicates data validation and exception handling.
Innovation Solution
A middle layer database pre-processor provides a generic method for data manipulation, using a centralized buffer to temporarily store and validate data, ensuring atomic transactions and independent database type support, with six common interfaces for all data interactions, including lock management and exception handling.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If direct database support for transactions is used, then transaction management is simplified, but the system becomes dependent on specific database vendor operations and formats
Solution Approach 1:
The patent introduces a middle layer (data manipulation layer) between the application and database that provides a generic transaction management interface. This intermediary handles database-specific operations internally while presenting a unified interface to applications, resolving the contradiction by maintaining ease of operation through standardized interfaces while achieving database independence through abstraction.
Solution Approach 2:
The data manipulation layer implements universal transaction management functions that work across different database vendors. By creating a single layer that handles multiple database-specific operations and formats, the system achieves both simplified transaction management and database independence simultaneously.
2Reliability
If pessimistic concurrency control is implemented, then data consistency is improved, but considerable coding effort is required for locking and unlocking operations
Solution Approach 1:
The patent implements automatic locking and unlocking mechanisms within the data manipulation layer that operate without requiring explicit programmer intervention. The system automatically manages locks during transactions and releases them appropriately, providing pessimistic concurrency control while eliminating the considerable coding effort that would otherwise be required.
3Device complexity
If optimistic concurrency control with timestamps is used, then coding effort is reduced, but it cannot support both optimistic and pessimistic concurrency models
Solution Approach 1:
The patent creates a dynamic concurrency control system where the data manipulation layer can adaptively apply different concurrency strategies (optimistic or pessimistic) based on transaction characteristics and system conditions. This dynamic approach allows the system to support both concurrency models simultaneously while maintaining low coding complexity through automated selection and management.
4Ease of operation
If database-specific DCL syntax is used, then data validation is simplified, but the system becomes tied to specific database vendor syntax and features
Solution Approach 1:
The data manipulation layer acts as an intermediary that translates generic data validation requirements into database-specific DCL syntax internally. This allows the system to maintain simple, vendor-independent data validation interfaces while handling database-specific syntax and features transparently, achieving both ease of operation and database vendor independence.
Data Source
AI summary
A middle layer in business applications is provided to wrap all the database management operations generically, to store changed data temporarily, to validate and lock the data before updating the database, and to synchronize the data change and unlock it as a whole when a commit method is called. In embodiments, only six generic methods are needed for all data interactions. Transaction, isolation level, exception format, and performance tuning operations can be performed centrally in the six generic methods. A buffer section may be created in the middle layer. Operations such as insert, update, delete, and select are performed on data stored in the buffer. Buffered data may then be stored in a data storage device.


