Cursor-Based State-Collapse Scheme for Shared Database Updates
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In high-performance computing systems like enterprise routers and switches, existing database management technologies face challenges in efficiently notifying processes of record updates, synchronizing databases for reliability and availability, managing memory usage, and handling concurrent read/write operations while maintaining high performance and scalability.
Innovation Solution
A cursor-based state-collapse scheme is implemented, which inserts temporal references into database records, maintains read and write cursors, and provides updates by walking through temporal lists, enabling efficient memory management, concurrent operations, and data replication with minimal state buildup.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional database update tracking is used to notify processes of record updates, then reader notification capability is provided, but memory usage increases due to state buildup from tracking all updates
Solution Approach 1:
The patent extracts the notification function from traditional update tracking by using write cursors that are independently notified of updates without requiring the system to maintain state information about all updates. The write cursor mechanism separates the notification capability from the data storage, allowing processes to be notified of updates without building up state in memory.
Solution Approach 2:
The patent implements a mechanism where update state is discarded after notification. The write cursor system allows processes to recover and process update information without the system maintaining persistent state about each update. Once a process is notified of an update through the cursor mechanism, the state information can be discarded, preventing memory buildup while maintaining reliable notification.
2Reliability
If database synchronization is implemented for reliability and availability, then data consistency is improved, but system complexity and overhead increase
Solution Approach 1:
The patent applies preliminary action by pre-establishing write cursors that are automatically notified of updates before any synchronization or replication needs to occur. This preliminary cursor setup allows the system to track changes efficiently without requiring complex synchronization protocols, reducing overhead while maintaining data consistency across distributed systems.
Solution Approach 2:
The write cursor acts as an intermediary between the database update mechanism and the processes that need to be notified. This intermediary simplifies the synchronization process by providing a standardized interface for update notification, reducing the complexity of direct peer-to-peer synchronization protocols while ensuring data consistency.
3Productivity
If concurrent read/write operations are allowed to maintain high performance, then system throughput is improved, but data integrity and notification accuracy may deteriorate
Solution Approach 1:
The patent segments the database access mechanism into separate read and write cursors that operate independently but are coordinated through temporal references. This segmentation allows concurrent read and write operations to proceed simultaneously without interfering with each other's integrity. Each cursor type is optimized for its specific operation while maintaining overall system consistency through the temporal reference mechanism.
Solution Approach 2:
The write cursor mechanism incorporates feedback by automatically notifying processes of updates without requiring explicit polling or complex locking protocols. This feedback mechanism ensures notification accuracy even during concurrent operations, as the system actively communicates updates to interested processes rather than requiring them to verify data integrity manually, thus maintaining both throughput and reliability.
4Measurement precision
If temporal references are inserted into all database records to enable cursor-based tracking, then update tracking precision is improved, but record size and storage overhead increase
Solution Approach 1:
The patent applies partial action by inserting temporal references only where needed for cursor-based tracking rather than into all database records universally. The temporal reference mechanism is selectively applied to records that are subject to update tracking through write cursors, providing precise tracking where necessary while avoiding unnecessary overhead in records that do not require such tracking, thus balancing precision with storage efficiency.
Data Source
AI summary
In one embodiment, a cursor management process inserts temporal references into a plurality of records written to a table of a shared database, the temporal references indicative of an order in which the records are written. A table write cursor points at a last-written record from among the plurality of records, and read cursors point to a last-read record of a corresponding application. The cursor management process may then provide, table updates to a particular application by determining a chain of one or more updated records of the table from the last-read record of the particular application to the last-written record based on walking a particular read cursor for the particular application through the temporal references of the one or more updated records until the particular read cursor points to the last-written record according to the table write cursor.


