Bi-directional Version Data Chaining in Distributed Database Pages

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Database data versioning in distributed database systems leads to performance issues due to additional and redundant read operations against version data, double access to bitemporal tables, and synchronous input/output requirements, resulting in network overhead.

Innovation Solution

Chaining version data bi-directionally in a data page of a main table of an organized table (index organized table or heap organized table) within the distributed database, using pointers to previous or later versions, thereby avoiding redundant accesses and synchronous input/output operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If database data versioning is implemented in a distributed database system, then version control and concurrency efficiency are improved, but performance deteriorates due to additional and redundant read operations against version data

Engineering Contradiction:
Improveversion controlVSAvoidperformance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent merges the main table and version data into a single unified structure. Version data is stored in the same data pages as the main table data, eliminating the need for separate version data storage and access paths. This integration allows the database system to treat main table data and version data uniformly, reducing the overhead of maintaining separate version data structures and eliminating redundant read operations.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent implements nesting by storing version data within the main table structure itself. Version data rows are inserted into the same data pages as the main table, with version data pointing back to the main table row. This nested arrangement allows version information to be contained within the existing table structure without requiring separate storage spaces, thereby reducing the number of disk I/O operations needed to access version data.

Inventive Principle:
Principle #7Nested doll (Nesting)

2Adaptability or versatility

If database data versioning is implemented, then collaborative sharing and editing are enabled, but network overhead increases due to synchronous input/output requirements

Engineering Contradiction:
Improvecollaborative sharingVSAvoidnetwork overhead
Core Design Contradiction:
Adaptability or versatilityVSLoss of energy

Solution Approach 1:

The patent applies preliminary action by pre-establishing the version data structure and pointers within the main table before actual data access occurs. Version data is stored in advance with pointers to main table rows, so when versioning operations are needed, the system can directly access pre-positioned data without requiring additional network communication or synchronous I/O operations. This advance preparation eliminates the need for repeated network round-trips during collaborative editing operations.

Inventive Principle:
Principle #10Preliminary action

3Loss of information

If additional read operations are performed against version data, then version tracking is improved, but system performance deteriorates due to redundant accesses

Engineering Contradiction:
Improveversion trackingVSAvoidsystem performance
Core Design Contradiction:
Loss of informationVSProductivity

Solution Approach 1:

The patent implements self-service by enabling the version data structure to maintain its own integrity and accessibility through self-contained pointers and references. Version data rows include pointers back to the main table rows, allowing the versioning system to automatically track and retrieve version information without requiring additional external read operations or system intervention. This self-maintaining structure eliminates redundant accesses by allowing direct navigation through the embedded pointers.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS12086118B2Chaining version data bi-directionally in data page to avoid additional version data accesses
Publication Date: 2024.09.10 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US12086118B2 patent drawing
  • US12086118B2 patent drawing
  • US12086118B2 patent drawing

AI summary

A computer-implemented method, system and computer program product for improving performance of a distributed database. A query is received to store version data in the distributed database. Upon receiving the query to store the version data, the version data is stored in a row of a data page of a main table of a heap organized table/index organized table of the distributed database, where the row of the data page of the main table of the heap organized table/index organized table of the distributed database contains a pointer pointing to a later/previous version of the version data if the later/previous version of the version data is stored in the data page thereby chaining version data bi-directionally.