Version Control Mechanism for Concurrent Data Access
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing electronic systems face challenges in managing concurrent access to electronic information storage and retrieval, leading to inconsistencies and performance delays due to locking operations, which hinder efficient data access and processing.
Innovation Solution
The implementation of Multi-Version Concurrency Control (MVCC) processes, which allow concurrent access without locking, by linking multiple versions of data on a storage device and using snapshot isolation to provide a consistent view of the data, thereby avoiding the need for locking operations and improving performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If locking operations are used to protect electronic information during concurrent access, then data consistency is maintained, but system performance deteriorates due to access delays
Solution Approach 1:
The data is segmented into multiple versions (current version and previous versions) that are stored separately. Each version is independently accessible, allowing concurrent read operations to access previous versions while write operations update the current version without blocking each other, thus resolving the contradiction between data consistency and system performance
Solution Approach 2:
Previous versions of data are copied and stored as separate entities rather than being overwritten. This copying mechanism allows multiple readers to access different versions simultaneously without requiring locks, maintaining data consistency while improving concurrent access performance
2Reliability
If waiting for previous access completion is implemented to protect data, then data protection is ensured, but access time increases
Solution Approach 1:
Multiple versions of data are prepared and stored in advance before any access conflict occurs. When a read operation needs data, the required version is already available without needing to wait for write operations to complete, thus eliminating access delays while maintaining data protection
Solution Approach 2:
Version identifiers act as intermediaries between read and write operations. Readers use version identifiers to access specific data versions without interfering with ongoing write operations, eliminating the need to wait for write completion while ensuring data protection through version isolation
Data Source
AI summary
An electronic system includes: a storage device configured to store a descriptor, including a key and a value, having multiple versions linked on the storage device; a storage interface, coupled to the storage device, configured to provide an entry having a location; and retrieve the descriptor, including the key and the value, based on the entry having the location for selecting one of the versions of the descriptor.


