Model-Level Metadata for Data Version Verification
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional methods for managing compatibility between data objects and applications are inefficient, as they rely on single version numbers that are not effectively stored or utilized, leading to issues with data serialization, deserialization, and compatibility checks, especially when multiple classes upgrade simultaneously or when different versions of data are stored.
Innovation Solution
The method involves storing meta-data at a model level, which includes version information and compatibility policies, allowing applications to determine read and write compatibility by using this meta-data to manage data sharing across different application versions, and providing mechanisms for upgrading or ignoring incompatible data.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If single version numbers are attached to individual data elements, then version tracking is simple, but compatibility determination becomes inefficient and redundant
Solution Approach 1:
The patent segments version management from individual data elements to the model level. Instead of tracking versions for each serialized object, the system creates a single version identifier per model that groups related classes. This segmentation reduces the number of version checks needed while maintaining compatibility tracking accuracy.
Solution Approach 2:
The patent introduces meta-data as an intermediary layer between the application and serialized data. This meta-data contains model version information and acts as a mediator that enables compatibility determination without requiring the application to inspect individual data element versions or attempt serialization failures.
2Reliability
If version information is embedded in serialized data, then version tracking is maintained, but independent verification and migration become difficult
Solution Approach 1:
The patent extracts version information from the serialized data payload and stores it separately in meta-data. This extraction allows the version information to be independently verified and accessed without requiring deserialization of the actual data, enabling applications to check compatibility before attempting to read or migrate data.
3Device complexity
If a single version number is used for all data in a store, then format compatibility is simplified, but granularity of version control is lost
Solution Approach 1:
The patent adds a dimensional layer to version control by organizing versions at the model level rather than the individual element level. This creates a hierarchical structure where models (groupings of related classes) have their own version identifiers, enabling both coarse-grained model-level tracking and fine-grained class-level version information within the meta-data.
4Reliability
If compatibility checks are performed by attempting serialization, then version matching is enforced, but performance is degraded and information is lost
Solution Approach 1:
The patent performs compatibility verification in advance through meta-data inspection before actual serialization or deserialization operations. The system checks model version compatibility and determines migration requirements beforehand, avoiding the need to attempt serialization failures to detect version mismatches and enabling early intervention for incompatible data.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Methods for efficiently determining and managing version information associated with sets of data objects, persistently storing the version information, and utilizing the stored version information to determine compatibility between the sets of data objects and applications performing operations utilizing the sets of data objects.