Database Buffer Pool Hot Read Range Optimization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current database management systems face performance hindrances due to the need for latches and locks for every read and write operation, which can slow down systems with predominantly read operations and few write operations.
Innovation Solution
A method to identify 'hot read ranges' where read operations outnumber write operations, allowing for the avoidance of latches and locks during read periods and queuing write operations for later processing, thereby optimizing buffer pool performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If latches and locks are used for every read and write operation, then data consistency is ensured, but system performance deteriorates due to overhead
Solution Approach 1:
The patent segments the database pages into different categories: hot read ranges (pages with predominantly read operations) and non-hot ranges. For hot read ranges, the system applies a specialized access path that avoids acquiring latches and locks during read operations, while maintaining proper synchronization for write operations. This segmentation allows the system to optimize performance for read-heavy workloads while preserving data consistency through selective application of synchronization mechanisms.
Solution Approach 2:
The patent applies different access control qualities to different regions of the database. Specifically, hot read ranges receive a localized optimization where read operations can proceed without acquiring latches or locks, while non-hot ranges continue to use the traditional latch/lock mechanism. This local quality approach ensures that performance improvements are applied only where beneficial (read-heavy pages) without compromising the reliability of other pages.
2Reliability
If latches are requested for every read operation, then physical consistency is guaranteed, but read operation speed decreases
Solution Approach 1:
The system performs preliminary analysis to identify hot read ranges based on historical access patterns before optimizing read operations. By pre-marking pages that are likely to be read-heavy based on statistics about read and write operations, the system can prepare optimized access paths in advance. This preliminary action allows read operations on hot pages to proceed without latch acquisition overhead while maintaining consistency through the pre-established optimization framework.
3Reliability
If traditional shared information access techniques are used, then data integrity is maintained, but overhead from latch requests increases
Solution Approach 1:
The patent extracts the latch acquisition step from the read operation path for hot read ranges. By identifying pages that are predominantly accessed for reading and marking them as hot read ranges, the system removes the latch request overhead from these specific operations. Write operations to hot ranges still acquire appropriate locks to maintain data integrity, while read operations can proceed directly without latch acquisition, thereby reducing overall system overhead.
Data Source
AI summary
An approach is provided for optimizing a database buffer pool. Based on statistics about read and write operations in a range of pages, the range of pages is determined to be a candidate for a hot read range for which locks and latches are avoided in processing operations in the hot read range. Using an on-time trigger or pre-trigger process, the hot read range is created from the range of pages by marking start and end points in the range of pages. Write operation(s) are determined to be included in the hot read range by marking an object control block. The write operation(s) are added to a write pending list. The read operations in the hot read range are performed without a latch or lock. The write operation(s) are merged from the write pending list to the range of pages and the write operation(s) are performed.


