Database Snapshot Storage Allocation via Spatial Properties
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current database systems face inefficiencies in managing transactions due to potential conflicts between read and write transactions, leading to resource-intensive snapshot storage and delayed data access, as existing solutions like queuing and locking mechanisms are not optimal, especially in high-volume systems.
Innovation Solution
Implement a method where read transactions are initially configured to 'live' mode, transitioning to 'snapshot' mode upon conflict detection, using published snapshots to access data, and managing snapshot storage based on spatial properties to avoid unnecessary resource allocation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If snapshot storage is allocated for every read transaction to ensure data consistency, then data consistency is maintained, but system resource consumption increases
Solution Approach 1:
The patent applies local quality by creating snapshots only for specific data portions that are actually read during a transaction, rather than snapshotting entire databases. The system identifies individual data pages or records that need to be read and creates minimal snapshots only for those specific portions, reducing overall resource consumption while maintaining data consistency for the actual data accessed.
Solution Approach 2:
The patent segments the database into smaller data portions (pages, records, or tuples) and creates snapshots only for the specific segments that are read during a transaction. This segmentation approach allows the system to maintain data consistency for accessed data while avoiding the overhead of snapshotting entire databases, thereby reducing system resource consumption.
2Reliability
If read transactions are queued to maintain data consistency with write transactions, then data consistency is maintained, but transaction processing speed decreases
Solution Approach 1:
The patent uses copying by creating lightweight snapshots of specific data portions that need to be read, rather than using heavy-weight queuing or locking mechanisms. These copies allow read transactions to proceed in parallel with write transactions without blocking, maintaining data consistency while improving transaction processing speed through concurrent execution.
3Reliability
If locking mechanisms are used to prevent conflicts between read and write transactions, then data consistency is maintained, but system resource consumption and transaction delay increase
Solution Approach 1:
The patent extracts the data consistency guarantee mechanism from traditional locking approaches and replaces it with snapshot-based isolation. Instead of using locks to prevent conflicts, the system takes out the locking overhead entirely and uses immutable snapshots of data portions, simplifying resource management while maintaining data consistency through versioning rather than blocking.
Data Source
AI summary
The present invention extends to methods, systems, computer program products, and data structures for managing database snapshot storage. Spatial properties database transactions are used to manage database snapshot storage allocation and reclamation. When a read transaction and subsequent write transactions refer to disjoint portions of a database, the read transaction can continue to read portions of data directly from the database. When a read transaction and subsequent write transactions refer to intersecting portions of a database, the read transaction can be transitioned to “snapshot” mode. The write transaction can publish a database snapshot can configure the read transaction to read contested portions of data from the published snapshot.


