Database Page Space Segmentation for Insert Update Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Database systems face performance issues due to variable row lengths and dynamic free space management challenges, leading to inefficiencies in INSERT and UPDATE operations, data clustering, and increased need for REORG operations.

Innovation Solution

A method for dynamic space reservation in database tables, where space for inserting and updating rows is allocated based on real-time statistics and workload history, allowing for adaptive management of free space to accommodate varying row lengths and optimize performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If space is reserved for inserting rows on a page, then INSERT operations can proceed efficiently, but UPDATE operations may fail when rows need to expand beyond the reserved space

Engineering Contradiction:
ImproveINSERT operation efficiencyVSAvoidUPDATE operation success rate
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The page space is segmented into two distinct regions: a first region reserved for inserting rows and a second region reserved for updating rows. This segmentation allows INSERT operations to use the first region while UPDATE operations can utilize the second region, preventing conflicts between the two operations and ensuring both can proceed efficiently without interfering with each other.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The solution introduces a dimensional separation by creating an additional space dimension (second region) on the page specifically for updates. Instead of relying on a single shared space, the system adds another spatial dimension for update operations, allowing rows to expand into this dedicated region without affecting the insert space or requiring page relocations.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Adaptability or versatility

If variable space is allocated for row updates, then row length flexibility is improved, but data clustering and prefetching efficiency deteriorate

Engineering Contradiction:
Improverow length flexibilityVSAvoiddata clustering and prefetching efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

By segmenting the page into distinct insert and update regions, the system maintains predictable data layouts within each region. This segmentation allows the database to efficiently manage variable row lengths in the update region while preserving data clustering in the insert region, enabling both adaptability and prefetching efficiency to coexist.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different regions of the page are assigned different qualities/functions: the first region is optimized for insert operations with predictable positioning, while the second region is optimized for update operations with flexible space. This local differentiation allows each region to maintain its specific advantages without compromising the other.

Inventive Principle:
Principle #3Local quality

3Productivity

If fixed space is reserved for row updates, then UPDATE operations are efficient, but the system cannot adapt to varying row length requirements

Engineering Contradiction:
ImproveUPDATE operation efficiencyVSAvoidrow length flexibility
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The system dynamically manages the second region for update operations, allowing rows to expand flexibly within this region based on their actual size requirements. The space management is adaptive, accommodating varying row lengths while maintaining efficient update operations through the dedicated update region.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS9892145B2Free space management in a database
Publication Date: 2018.02.13 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US9892145B2 patent drawing
  • US9892145B2 patent drawing
  • US9892145B2 patent drawing

AI summary

A row is inserted in a database table on a page having a first space reserved for inserting rows of the database table. A second space is reserved for adding data to the inserted row, wherein reserving the second space includes reserving the second space on the page responsive to inserting the row, so that the amount of space reserved for adding data to inserted rows grows as more rows are inserted. The page is marked full for the second space independently of whether the first space is full for inserting new rows. Data is added to rows on the page, responsive to detecting that the second space is full, by adding the data to one or more new pages, even though rows may still be inserted on the page using any remaining room in the first space on the page.