Distributed Storage Garbage Collection for Versioned Rowblocks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed database systems face challenges in managing uneven workloads and transaction conflicts due to the lack of record-level processing and efficient data management, leading to increased computational burden and reduced performance.

Innovation Solution

Implementing a record-aware distributed storage system that uses rowblocks for data management, supporting versioned records, transaction conflict detection, and multiversion concurrency control, allowing the system to handle transactions efficiently and reduce the computational load on database access applications.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If distributed database systems are implemented to scale processing capacity, then service availability and processing capacity are improved, but uneven workload distribution and transaction conflicts increase

Engineering Contradiction:
Improveprocessing capacityVSAvoidworkload distribution complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the database system into separate compute nodes and storage nodes, with further segmentation of storage into rowblocks and record versions. This segmentation allows independent scaling and management of compute and storage resources, addressing the uneven workload distribution problem by enabling granular control over resource allocation and workload balancing across the distributed system.

Inventive Principle:
Principle #1Segmentation

2Reliability

If distributed storage systems are used to increase service availability, then system reliability is improved, but computational burden and performance overhead increase

Engineering Contradiction:
Improveservice availabilityVSAvoidcomputational burden
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The storage nodes autonomously perform garbage collection by detecting and reclaiming deleted record versions without requiring coordination from compute nodes. This self-service mechanism reduces the computational burden on the distributed system by eliminating the need for compute nodes to participate in garbage collection operations, thereby reducing overall computational overhead while maintaining data reliability through distributed storage.

Inventive Principle:
Principle #25Self-service

3Productivity

If record-level processing is implemented to manage transactions efficiently, then transaction handling performance is improved, but system complexity and operational overhead increase

Engineering Contradiction:
Improvetransaction handling performanceVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces rowblocks as an intermediary data structure between compute nodes and individual records. Rowblocks group multiple record versions together and manage them as a unit, simplifying the operations needed for transaction processing. This intermediary layer enables efficient record-level processing by allowing compute nodes to work with rowblocks rather than individual records, reducing the complexity of transaction management while maintaining high performance.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS20260003838A1Scalable garbage collection for separate distributed storage systems for database management applications
Publication Date: 2026.01.01 AMAZON TECH INC
  • US20260003838A1 patent drawing
  • US20260003838A1 patent drawing
  • US20260003838A1 patent drawing

AI summary

Scalable garbage collections is performed by a distributed storage system. Garbage collection events are detected by a distributed storage system for different portions of a table. Garbage collection is performed for individual ones of the different portions of the table responsive to detecting the garbage collection events, including identifying one or more versions of a record to reclaim from the different portions of the table based on transaction status information and reclaiming the one or more versions of the record.