Database Log Segmentation for Snapshot and BLOB Replication

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing database systems face inefficiencies in managing log files during transactions, particularly in handling binary large objects and generating snapshots, leading to delayed transactions and increased resource usage.

Innovation Solution

Implement a method for managing log files by monitoring storage allocation and dynamically allocating additional storage during updates, generating snapshots based on log sequence indicators, and efficiently replicating and deleting binary large objects.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If log files are periodically updated and truncated, then storage is reused efficiently, but transactions are blocked when log files become full

Engineering Contradiction:
Improvetransaction throughputVSAvoidtransaction blocking time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent divides the log file system into multiple segments or regions within the allocated storage space. When one segment becomes full, the system can switch to another segment rather than blocking transactions. This segmentation allows continuous transaction processing by distributing log records across multiple regions, thereby resolving the contradiction between efficient storage reuse and transaction blocking.

Inventive Principle:
Principle #1Segmentation

2Productivity

If log file storage is increased to prevent blocking, then transaction continuity is improved, but storage resource usage increases

Engineering Contradiction:
Improvetransaction continuityVSAvoidstorage capacity
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent implements dynamic log file management where the system actively monitors storage availability and dynamically allocates or deallocates log file segments based on current transaction loads and storage conditions. This dynamic approach allows the system to maintain transaction continuity by allocating additional storage only when necessary, rather than permanently increasing storage capacity, thus resolving the contradiction between transaction continuity and storage resource usage.

Inventive Principle:
Principle #15Dynamics

3Reliability

If snapshots are generated frequently for recovery and replication, then data recovery capability is improved, but system overhead and resource consumption increase

Engineering Contradiction:
Improvedata recovery capabilityVSAvoidsnapshot generation overhead
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent changes the parameters of snapshot generation by implementing incremental snapshots that only capture changes since the last snapshot, rather than full database snapshots. This parameter change reduces the amount of data that needs to be processed and stored during each snapshot operation, thereby improving data recovery capability while reducing the energy overhead and resource consumption associated with frequent snapshot generation.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS12530319B2Database management system
Publication Date: 2026.01.20 SINGLESTORE INC
  • US12530319B2 patent drawing
  • US12530319B2 patent drawing
  • US12530319B2 patent drawing

AI summary

A method for managing log files for recording operations on data stored in a database is provided, wherein a set of log files having an allocated first portion of storage is updated, the allocated first portion of storage is monitored, and a second portion of storage is allocated in dependence on a determination that an available portion of storage is below a predetermined size. A method for generating a snapshot is provided, wherein data entries are included in the snapshot in dependence on a determined relative order of log records in a set of log files. A method of replicating a binary large object is provided, wherein the binary large object is sent to a second database in response to identifying a log record comprising data indicating the binary large object. A method for deleting one or more binary large objects is provided, wherein the data indicating one or more binary large objects that have been logically deleted are stored in a snapshot and the one or more binary large objects are deleted using the data indicating the one or more binary large objects after a previous snapshot is deleted.