Virtual Schema Layering for Parallel Database Development
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current database management systems face challenges in supporting iterative and parallel database application development, as they require multiple separate sets of physical tables, leading to high costs and inefficient data management, while view-based systems restrict segregated development and testing.
Innovation Solution
A virtual change database system that stores a common set of base physical data and multiple sets of virtual changes, allowing different applications to access and modify database objects with varying schemas without affecting each other, by generating delta metadata and merging it with existing metadata.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If multiple separate sets of physical tables are maintained for different applications, then each application can have its own schema modifications, but storage costs and system complexity increase significantly
Solution Approach 1:
The schema is segmented into two independent layers: a shared base physical table structure and application-specific virtual schema layers. Each application's schema modifications are contained within its own virtual layer, allowing multiple applications to have customized schemas without duplicating the underlying physical data structure.
Solution Approach 2:
Instead of creating separate physical copies of tables for each application, the system creates virtual copies through schema mapping layers. These virtual schemas map to the shared physical tables, providing application-specific views without actual data duplication.
2Quantity of substance
If a view-based system is used to share physical data, then storage efficiency improves, but segregated development and testing become restricted
Solution Approach 1:
The system segments the schema into a common physical layer and multiple isolated virtual layers. Each virtual layer represents a separate development environment that can be independently modified, allowing teams to work in parallel without interfering with each other or the base physical structure.
Solution Approach 2:
Virtual schema layers act as intermediary between applications and the shared physical tables. These intermediaries enable isolated development and testing by providing application-specific schema views that can be modified independently while maintaining connection to the common data source.
3Adaptability or versatility
If separate physical tables are used for each application, then schema independence is achieved, but data management efficiency and cost-effectiveness deteriorate
Solution Approach 1:
Multiple application schemas are merged into a unified virtual schema system that maps to shared physical tables. This combining approach maintains schema independence for each application while improving data management efficiency through centralized physical storage and reduced redundancy.
Solution Approach 2:
The shared physical tables serve multiple applications simultaneously through virtual schema mapping. The same physical data structure supports multiple applications with different schema requirements, making the system universal and multi-functional while improving management efficiency.
Data Source
AI summary
A virtual change database system that supports iterative and parallel database application development is disclosed. The system stores a common set of base physical data and a plurality of sets of virtual changes. Each set of virtual changes is associated with a database object. A database application may access a database object in the database by using the virtual version of the object to extract the object's data content from the common base physical data. The database system present a first query response to (i) a first application based on the set of base physical data and (ii) a first set of virtual changes for a particular database object, while also presenting a second query response to a second application based on the set of base physical data and a second, different set of virtual changes for the particular database object.


