Log Structured Database Update Buffering for Disk Access Bottlenecks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The slower improvement in disk access times compared to CPU speeds and memory sizes creates bottlenecks in computer systems, as existing solutions like RAID and storage area networks do not effectively address the inefficiency of single disk access, leading to increased wait times in applications with frequent data block updates.

Innovation Solution

A method that accumulates multiple updates for a database object and writes them in a single disk access by identifying contiguous free space, logging updates as if the memory were a log file, and flushing them in a single disk operation, reducing the number of disk accesses required.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If buffer caching and incremental check pointing are used to delay disk writes, then the number of immediate disk accesses is reduced, but the total number of physical writes to disk remains the same and disk access bottleneck persists

Engineering Contradiction:
Improvedisk access wait timeVSAvoiddisk write throughput
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The patent merges multiple separate disk write operations into a single consolidated write operation. Instead of writing each updated data block individually to disk, the system accumulates multiple updates in memory and performs one bulk write operation, thereby reducing the total number of disk accesses and eliminating the rotation/seek bottleneck for each individual block

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent performs preliminary actions by accumulating multiple updates in the buffer cache before actually writing to disk. The system waits until there are multiple updates ready, then performs a single disk write operation that handles all accumulated updates at once, rather than immediately writing each update as it occurs

Inventive Principle:
Principle #10Preliminary action

2Reliability

If each update to a data block is written immediately to disk, then data consistency is maintained, but the number of disk accesses increases causing performance bottleneck

Engineering Contradiction:
Improvedata consistencyVSAvoiddisk access time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary accumulation of updates in the buffer cache before disk writing. Multiple updates are gathered and prepared in memory first, then written to disk in a single operation, reducing the frequency of disk accesses while maintaining data consistency through proper buffering and flushing mechanisms

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The buffer cache acts as an intermediary between the application layer and the disk. It temporarily stores updates and manages the writing process, allowing multiple updates to be accumulated and then written in bulk, thereby reducing the number of direct disk accesses while maintaining data integrity

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If updates are accumulated and written in bulk, then disk access frequency is reduced improving performance, but the complexity of managing update accumulation and contiguous free space increases

Engineering Contradiction:
Improvedisk write throughputVSAvoidupdate management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the disk into contiguous free space regions and manages updates within these segments. By dividing the update accumulation process into manageable segments and using contiguous free space identifiers, the system simplifies the complexity of tracking and managing multiple updates while maintaining bulk write capabilities

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system changes the parameter of update management from individual block-level operations to bulk operation mode. By tracking the number of updates accumulated and the location of contiguous free space, the system automatically transitions between accumulation and write phases, reducing the manual complexity of managing update processes

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS7418544B2Method and system for log structured relational database objects
Publication Date: 2008.08.26 ORACLE INT CORP
  • US7418544B2 patent drawing
  • US7418544B2 patent drawing
  • US7418544B2 patent drawing

AI summary

A system, method, computer program and article of manufacture for updating a disk that moves updates for a specific database object into available contiguous free data blocks, and writes the multiple updates to disk using a single disk access, maintaining database transactional and durability semantics.