Streaming Database Schema Modification via Atomic Transaction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional database systems face challenges in minimizing interruptions to streaming services and applications during schema changes, as they lack support for transaction-based schema modifications, requiring applications to be halted and involving complex data conversion processes.
Innovation Solution
A method for dynamically modifying a database schema in a streaming database management system by identifying differences between the new and existing schema and applying them in a single transaction, with data conversion and backup mechanisms to ensure atomicity and minimize disruptions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If schema changes are implemented using conventional database systems, then the schema can be modified, but the application must be halted and extended downtime occurs
Solution Approach 1:
The patent creates a new schema version and loads it into memory before the old schema is destroyed. This preliminary action ensures that the new schema is ready and validated before switching, allowing seamless transition without application downtime. The new schema is prepared in advance while the application continues to run on the old schema.
Solution Approach 2:
The patent introduces an intermediary mechanism where the new schema is loaded into memory as a temporary intermediate state before becoming the active schema. This intermediary loading process allows the application to continue operating on the old schema while the new schema is prepared, and then switch atomically without interruption.
2Adaptability or versatility
If schema changes are implemented by destroying and re-creating sub-application schemas, then the modifications can be applied, but only affected sub-applications can continue with limited functionality
Solution Approach 1:
The new schema version is created and loaded into memory before the old schema is destroyed. This preliminary creation and loading ensures that the new schema is fully prepared and validated, allowing the application to switch schemas atomically without interruption or limited functionality.
Solution Approach 2:
The patent creates a copy of the schema in a new version and loads it into memory. This copying approach allows the new schema to be prepared independently without affecting the old schema, enabling seamless switching while maintaining application continuity and full functionality throughout the transition.
3Adaptability or versatility
If changes-in-place schema modifications are used, then the entire application must be stopped, but the schema can be completely updated
Solution Approach 1:
The new complete schema is created and loaded into memory before the old schema is destroyed. This preliminary action ensures that the complete new schema is ready and validated, allowing atomic switching without stopping the application, thereby maintaining full productivity and availability throughout the schema update process.
4Adaptability or versatility
If conventional schema change techniques are used, then a transitional program is required to convert data, but this increases system complexity
Solution Approach 1:
The patent enables the database system to automatically handle schema version transitions by loading new schema versions into memory and switching between versions atomically. This self-service mechanism eliminates the need for external transitional conversion programs, reducing system complexity while maintaining full schema transition capability.
Data Source
AI summary
A method for dynamically modifying a database schema in a streaming database management system receives a new database schema, compares the new schema to an existing schema, identifies the differences between the new schema and the existing schema, and applies the identified differences to the database in a single transaction, thereby producing a database organized according to the new database schema.


