Multi-page Database Index Splitting to Reduce Log Writes

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing database management systems (DBMSs) face performance issues due to the inefficiencies in index splitting operations, which require synchronous log writes and can lead to unnecessary splitting and locking of database resources, especially during mass insertions or sequential updates.

Innovation Solution

Implementing a multi-splitting mechanism that determines whether a near-capacity leaf page should be split into multiple pages based on historical splitting frequency and data distribution, allowing for prophylactic pre-split operations during low utilization periods, thereby reducing the number of index splits and synchronous log writes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional two-page splitting is performed, then the index structure is maintained, but the number of synchronous log writes increases and database performance deteriorates

Engineering Contradiction:
Improveindex structure integrityVSAvoiddatabase performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent divides a near-capacity leaf page into multiple pages (three or more) instead of the conventional two pages. This segmentation reduces the frequency of split operations and consequently reduces the number of synchronous log writes required, thereby improving database performance while maintaining index structure integrity

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs prophylactic pre-split operations during periods of lower utilization before the leaf page reaches capacity. By proactively splitting pages when utilization is low, the system prevents future split operations during high-utilization periods, reducing the impact on database performance and minimizing synchronous log writes

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If frequent index splits are performed, then the index accommodates growing data, but the locking of database resources increases and efficiency decreases

Engineering Contradiction:
Improveindex capacityVSAvoiddatabase efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

By splitting leaf pages into multiple pages (three or more), the system increases the capacity of each split operation, thereby reducing the total number of split operations needed to accommodate growing data. This reduces resource locking frequency and improves database efficiency

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically determines whether to perform conventional two-page splitting or multi-page splitting based on current database conditions, including utilization patterns and workload characteristics. This dynamic approach optimizes the balance between index capacity and database efficiency

Inventive Principle:
Principle #15Dynamics

3Reliability

If synchronous log writes are performed for each split operation, then data consistency is ensured, but the number of log writes increases and performance deteriorates

Engineering Contradiction:
Improvedata consistencyVSAvoidlog write time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent reduces the frequency of split operations by dividing pages into multiple segments, which consequently reduces the number of synchronous log writes required. Each split operation still maintains data consistency, but the overall time spent on log writes is reduced

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

By performing split operations during periods of lower utilization, the system anticipates and prepares the index structure in advance, reducing the need for urgent synchronous log writes during high-utilization periods and thereby reducing overall log write time

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11275720B2Multi-page splitting of a database index
Publication Date: 2022.03.15 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11275720B2 patent drawing
  • US11275720B2 patent drawing
  • US11275720B2 patent drawing

AI summary

An improved database-management system determines that a near-capacity leaf page of its database index must be split into multiple pages in order to store newly added index entries. The system determines whether the page should be “multi-split” into more than two pages, the total number of new pages to be added, and the range of indexed values assigned to each new page. These determinations are made as functions of the frequency with which the index page, and other index pages for the same index, have been split in the past, of the data distribution of values indexed by the leaf page, and of the degree of sequentiality of entries added to the leaf page. Leaf pages approaching capacity may also be scheduled for “pre-split” splitting during a period of lower utilization. These multi-split and pre-split operations reduce the numbers of index splits and of corresponding synchronous database-log writes.