Diskless Database Cache Using Redo Records for Consistent Queries
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current client-side database caches do not guarantee query result consistency, leading to instances of stale data, and maintaining physical or logical replicas requires significant resources.
Innovation Solution
An integrated in-front database cache (IIDC) that caches data blocks from a primary database and applies redo records to maintain data consistency, ensuring consistent query results without the need for persistent storage, using a database server instance to manage the cache and apply redo records.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If client-side cache systems are used to improve access latency, then query response time is improved, but data consistency is worsened due to stale data
Solution Approach 1:
The patent introduces a database server instance as an intermediary between the client-side cache and the primary database. This server instance manages the cache and applies redo records to maintain data consistency, resolving the contradiction by ensuring the cache remains synchronized with the primary database without requiring client-side consistency management
Solution Approach 2:
The patent implements a feedback mechanism where the database server instance receives redo records from the primary database and automatically applies them to cached data blocks. This continuous feedback loop ensures that cached data is updated in response to database changes, maintaining consistency while preserving low latency access
2Reliability
If physical or logical replicas are created to maintain data consistency, then data consistency is improved, but resource requirements worsen due to persistent storage and processing power needs
Solution Approach 1:
The patent extracts the consistency maintenance function from full database replicas. Instead of creating complete physical or logical copies of the database, the system extracts only the necessary redo records and applies them selectively to cached data blocks, significantly reducing storage and processing resource requirements
Solution Approach 2:
The patent uses a lightweight copying approach by copying only the redo records rather than copying entire database tables. This allows the cache to be updated with changes from the primary database without requiring full table copies, reducing the resource footprint while maintaining data consistency
Data Source
AI summary
Techniques are described herein for an integrated in-front database cache (“IIDC”) providing an in-memory, consistent, and automatically managed cache for primary database data. An IIDC comprises a database server instance that (a) caches data blocks from a source database managed by a second database server instance, and (b) performs recovery on the cached data using redo records for the database data. The IIDC instance implements relational algebra and is configured to run any complexity of query over the cached database data. Any cache miss results in the IIDC instance fetching the needed block(s) from a second database server instance managing the source database that provides the IIDC instance with the latest version of the requested data block(s) that is available to the second instance. Because redo records are used to continuously update the data blocks in an IIDC cache, the IIDC guarantees consistency of query results.


