Database Version Control via System Columns

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
ImproveIndependent development capabilityVSAvoidDatabase maintenance complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

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.

Inventive Principle:
Principle #5Merging (Combining)

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.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Productivity

If multiple developers edit the database independently, then each developer can work on separate portions, but conflicts arise between separate developers

Engineering Contradiction:
ImproveConcurrent development efficiencyVSAvoidData consistency
Core Design Contradiction:
ProductivityVSReliability

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.

Inventive Principle:
Principle #10Preliminary action

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.

Inventive Principle:
Principle #24Intermediary (Mediator)

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

Engineering Contradiction:
ImproveVersion tracking capabilityVSAvoidDatabase schema complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

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).

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS10387401B2Version control of records in an electronic database
Publication Date: 2019.08.20 ORACLE INT CORP
  • US10387401B2 patent drawing
  • US10387401B2 patent drawing
  • US10387401B2 patent drawing

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.