Database Version Control via System Columns
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current database management systems face challenges in maintaining separate versions of records without conflicts, especially when multiple developers modify application metadata, leading to cumbersome and costly solutions that lack cross-platform compatibility.
Innovation Solution
A computing system that alters the database schema to include additional system columns for tracking versions, acts as an intermediary to manage access and changes, and generates queries to ensure consistent access to selected versions, allowing multiple versions to co-exist without interfering with each other.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If a separate development database is implemented to allow developers to iterate changes, then developers can work independently without impacting production, but maintaining an additional database is cumbersome and costly
Solution Approach 1:
The patent merges the development and production databases into a single database instance by implementing version control mechanisms. Instead of maintaining separate database copies, the system allows multiple versions of records to coexist within the same database, enabling developers to work on development versions while production uses a different version, thus eliminating the need for separate database infrastructure.
Solution Approach 2:
The database system is designed to serve multiple functions simultaneously - it can store and manage multiple versions of the same records, support both development and production environments, and provide version control capabilities. This multi-functionality allows a single database to replace what would traditionally require separate database instances for different purposes.
2Productivity
If multiple developers edit the database independently, then each developer can work on separate portions, but conflicts arise between separate developers
Solution Approach 1:
The system performs preliminary actions by creating versioned copies of records before developers make changes. Each developer works on a specific version of the record rather than the live record, preventing direct conflicts. The version control mechanism allows developers to retrieve, modify, and save changes to their own version without interfering with other developers' work or the production data.
Solution Approach 2:
The version control system acts as an intermediary between multiple developers and the database records. Instead of developers directly editing the same records simultaneously (which causes conflicts), the version control mechanism mediates access by providing each developer with a controlled view and edit capability of specific versions, managing the interactions and preventing conflicts.
3Reliability
If version control is implemented to track record changes, then separate versions can be maintained, but database schema complexity increases due to additional system columns
Solution Approach 1:
The patent adds a version dimension to the database records by introducing version identifiers and version control columns. Instead of managing versions through separate physical tables or complex relationships, the system embeds version information directly in the record structure, allowing multiple versions to be distinguished and managed within the same table structure through an additional dimensional attribute (version number/identifier).
Data Source
AI summary
Systems, methods, and other embodiments associated with concurrently maintaining separate versions of records in an electronic database are described. In one embodiment, a method includes enabling the electronic database to concurrently store separate versions of a record by using a set of system columns to maintain the separate versions together in the electronic database and provide access to each of the separate versions in isolation from one another. The example method may also include, in response to identifying a change request to modify the record, generating an additional version of the record in the electronic database by adding the additional version into the electronic database with a new row identifier in a row identifier column and a row identifier from the record stored in the source column to uniquely identify the additional version as a version of the record and avoid conflicts between multiple versions of the record.


