Data Row Cache for Page-Based RDBMS Engine

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional relational database systems experience contention and latency due to concurrent access by multiple clients, particularly when clients attempt to read and update data stored in the same memory page, leading to reduced performance.

Innovation Solution

Implementing a row-based data row cache (DRC) that allows multiple clients to access unrelated data rows simultaneously without locking pages, reducing contention and enabling efficient access and manipulation of hot data without affecting other rows within the same cache.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If page-based memory storage is used to store rows of related and unrelated data, then storage efficiency is improved, but system latency increases due to contention when multiple clients access data concurrently

Engineering Contradiction:
Improvestorage efficiencyVSAvoidsystem latency
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent segments the memory storage from page-based to row-based organization. Each row is stored as an independent unit in the data row cache, allowing individual rows to be accessed without locking entire pages. This segmentation enables concurrent access to different rows by multiple clients simultaneously, eliminating the contention-induced latency while maintaining efficient storage through row-level isolation.

Inventive Principle:
Principle #1Segmentation

2Reliability

If page-level locking is used to prevent concurrent access conflicts, then data integrity is maintained, but productivity decreases due to reduced access speed

Engineering Contradiction:
Improvedata integrityVSAvoidaccess speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The invention applies segmentation at the row level rather than page level. Each row in the data row cache can be accessed independently without requiring page-level locks. This allows multiple clients to concurrently access different rows simultaneously, maintaining data integrity through row-level isolation while dramatically improving access speed and productivity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates a copy of the data storage structure by implementing a data row cache that stores rows in a row-based format rather than referencing the original page-based storage. This copy allows concurrent read and write operations to proceed simultaneously without blocking each other, as each operation works on independent row copies in the cache, thereby maintaining integrity while improving access speed.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS9317208B2Data row cache for an acid compliant in-memory row store in a page-based RDBMS engine
Publication Date: 2016.04.19 SYBASE INC
  • US9317208B2 patent drawing
  • US9317208B2 patent drawing
  • US9317208B2 patent drawing

AI summary

A system, method and a computer-readable medium for reducing a contentious access of data in memory system storage by simulating an online transaction processing business lifecycle, are provided. The memory storage system determines a type of data, where the type of data corresponds to access frequency of data. The data is stored in a row-based format in a row-based storage, a page-based format in a page-based storage and a compressed format in a compressed storage based on the determined type of data. The data is also transferred between the row-based storage, the page-based storage and the compressed storage according to predefined criteria.