Large-Value Transactions Using OLB Storage and MVCC Locking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing database systems face challenges in ensuring concurrent transactions in a distributed environment while maintaining data integrity and consistency, particularly in handling large values, and often suffer from issues like deadlock and starvation.

Innovation Solution

The implementation of a concurrency control mechanism combining multi-version concurrency control (MVCC) for read operations and locking for write operations, along with a two-level transaction hierarchy, ensures that transactions execute safely and efficiently, using a linearizable storage system to manage snapshot isolation and release locks upon commit.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If concurrency control mechanisms are implemented to ensure data integrity in distributed databases, then data consistency is improved, but system performance and transaction throughput deteriorate due to locking overhead and deadlock risks

Engineering Contradiction:
Improvedata consistencyVSAvoidtransaction throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the database schema into multiple independent units (schema units) that can be modified independently. This segmentation allows concurrent transactions to proceed on different schema units simultaneously, reducing locking contention and improving throughput while maintaining consistency within each unit. The schema evolution operation is divided into: (1) creating a new schema unit, (2) migrating data in batches, and (3) switching the active schema unit, allowing other transactions to continue on the original schema unit during migration.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary actions by creating a new schema unit and copying necessary data before the original schema unit is dropped. This preliminary setup allows the system to switch schemas atomically without blocking ongoing transactions. The migration process prepares the new schema unit in advance, so when the switch occurs, transactions can continue uninterrupted on the old schema unit while the new one becomes available.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If schema evolution operations are performed in distributed databases, then system adaptability is improved, but transaction conflicts and deadlocks increase due to locking requirements

Engineering Contradiction:
Improveschema evolution capabilityVSAvoidtransaction conflict management
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces a schema unit as an intermediary layer between the physical database storage and the transaction processing system. This schema unit abstraction allows schema evolution to occur without directly impacting transaction execution. The schema unit acts as a mediator that can be created, modified, and switched independently, reducing direct conflicts between schema operations and transactions. The system can have multiple schema units coexisting, with transactions routing to appropriate schema units, thereby reducing deadlock scenarios.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of manufacture

If large values are stored directly in distributed database tables, then data storage simplicity is improved, but read and write performance deteriorate due to increased I/O operations

Engineering Contradiction:
Improvedata storage simplicityVSAvoidread/write performance
Core Design Contradiction:
Ease of manufactureVSSpeed

Solution Approach 1:

The patent extracts large values from the main database table rows and stores them separately in external storage systems such as cloud storage or object storage. The database table contains only references (pointers or keys) to the external storage locations. This extraction reduces the size of database rows, improving read/write performance and reducing I/O operations. The large values are taken out from the critical path of transaction processing while remaining accessible through the stored references.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS12468685B2Optimizations to read and write transactions for large values in distributed databases
Publication Date: 2025.11.11 SNOWFLAKE INC
  • US12468685B2 patent drawing
  • US12468685B2 patent drawing
  • US12468685B2 patent drawing

AI summary

The subject technology receives a key-value pair. The subject technology determines a value size of the key-value pair is greater than a threshold size for an out of line blob (OLB) key space. The subject technology performs a write operation of a key-pointer pair into a regular space. The subject technology performs a plurality of write operations for multiple key-value parts of the key-value pair into the OLB key space. The subject technology performs conflict checking of the regular space for the key-value pair.