Variable-Size Undo Memory Chunk Allocation in DBMS
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Database management systems face inefficiencies in managing undo logs, leading to prolonged data retrieval times and inefficient memory and storage utilization, which affects performance and concurrency.
Innovation Solution
Implementing a method to dynamically allocate variable-sized undo memory chunks for undo information in a database management system, transferring data to persistent storage when a predetermined threshold is reached, to optimize memory usage and enhance concurrency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If undo information is stored in memory with fixed-size chunks, then memory allocation is simple, but memory utilization efficiency deteriorates due to fragmentation and wasted space
Solution Approach 1:
The patent implements dynamic chunk sizing where the size of undo memory chunks is adjusted based on the actual amount of undo information generated by transactions. Instead of allocating fixed-size chunks, the system allocates variable-sized chunks that match the actual storage needs, thereby improving memory utilization efficiency while maintaining allocation simplicity through automated size determination.
2Reliability
If undo information is stored in persistent storage, then data durability is improved, but data retrieval time deteriorates due to slower access speeds compared to memory
Solution Approach 1:
The patent segments undo information management into two distinct layers: a hot data layer in memory for frequently accessed undo information requiring fast retrieval, and a cold data layer in persistent storage for archival purposes. This segmentation allows the system to maintain data durability through persistent storage while achieving fast data retrieval for active transactions through memory storage, effectively resolving the contradiction between durability and access speed.
3Device complexity
If memory is allocated for undo information without dynamic adjustment, then allocation overhead is reduced, but concurrency deteriorates due to memory exhaustion under high transaction loads
Solution Approach 1:
The patent implements a feedback mechanism that continuously monitors the amount of undo information generated by transactions and the current memory usage state. Based on this feedback, the system dynamically adjusts the size of undo memory chunks and triggers transfer of less frequently accessed undo information to persistent storage. This feedback-driven approach allows the system to maintain high concurrency under varying transaction loads while managing memory resources efficiently without excessive allocation overhead.
Data Source
AI summary
Disclosed is a computer program stored in a computer-readable storage medium including encoded commands according to an exemplary embodiment of the present disclosure. When the computer program is executed by one or more processors, the computer program allows the one or more processors to perform a method for managing undo information in a database management system (DBMS). The method may include: forming undo information corresponding to an update request by a first transaction in response to the update request by the first transaction in the database management system (DBMS); determining an undo memory chunk to be allocated to the undo information from an undo memory pool on a memory, the undo memory chunk having a variable size; and maintaining the undo information on a space of the memory by using the determined undo memory chunk.


