In-Place Metadata Transformation for Reliable Shared Data Store Upgrades
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for upgrading massively parallel shared data stores are impractical and error-prone, especially when dealing with large datasets, as they often leave the system in an indeterminate state due to the risk of bugs or unexpected events during the upgrade process.
Innovation Solution
An in-place metadata transformation process using the data store engine to create a shadow copy of the metadata, apply transformations, and swap it with the original metadata only if successful, ensuring the system can roll back to its original state if errors occur, thus maintaining reliability and safety.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If data is extracted to intermediate format for upgrade, then upgrade reliability is improved, but for large datasets this becomes impractical due to storage and time constraints
Solution Approach 1:
The patent extracts only the critical bootstrap metadata from the full dataset for upgrade processing, rather than extracting all data. This selective extraction of essential configuration information enables reliable in-place upgrades of large datasets without requiring intermediate storage of the entire data volume.
Solution Approach 2:
The upgrade process is segmented into distinct phases: extracting bootstrap metadata, transforming it in-memory, and applying changes in-place. This segmentation allows the upgrade to proceed without handling the full dataset at once, making large data volume manageable while maintaining reliability.
2Quantity of substance
If in-place upgrade is performed, then storage efficiency is improved, but system reliability deteriorates due to risk of corruption from bugs or unexpected events
Solution Approach 1:
The system performs preliminary validation of the transformed bootstrap metadata before applying it in-place. This includes checking the transformed metadata against expected formats and constraints, ensuring the upgrade path is valid before committing changes, thereby preventing corruption from bugs or unexpected events.
Solution Approach 2:
The patent introduces an in-memory transformation workspace as an intermediary between the original bootstrap metadata and the target system state. This intermediate workspace allows validation and verification of transformations before they are applied to the running system, maintaining reliability while enabling in-place upgrades.
3Productivity
If low level program is used for in-place update, then upgrade speed is improved, but error-proneness increases leaving system in indeterminate state
Solution Approach 1:
The upgrade process implements feedback mechanisms that continuously verify the system state during transformation. If errors are detected, the system can roll back to the original state, preventing indeterminate states. This feedback control maintains reliability while using efficient in-place update methods.
Solution Approach 2:
The patent creates backup copies of the original bootstrap metadata and implements rollback capabilities before performing in-place transformations. This cushioning mechanism ensures that if errors occur during the upgrade process, the system can recover to its original state, preventing corruption while maintaining upgrade speed.
4Quantity of substance
If bootstrap metadata is transformed in-place, then storage efficiency is improved, but complexity of transformation process increases
Solution Approach 1:
The patent creates a copy of the bootstrap metadata in memory for transformation, rather than manipulating the original in-place. This copying approach simplifies the transformation logic by working with a discrete working copy, reducing the complexity of the transformation process while maintaining storage efficiency through selective in-place application of changes.
Data Source
AI summary
A method for upgrading software in a shared data store comprises a reliable, safe in-place method of transformation of metadata in which a metadata catalog is cloned, stored in the data store, and the cloned metadata is transformed in-place using the data store engine and SQL declarative language. The original and transformed cloned catalog files are swapped atomically, and the system upgrade is validated using the new version of software. If errors are encountered during the upgrade, the original catalog can be swapped back and the system returned to its original state.


