Local Item Collections in Distributed Key-Value Databases

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed key-value database management systems face challenges in data distribution, leading to uneven workload and performance issues due to the need for even data distribution across computing nodes, which complicates operations like query performance and transaction management.

Innovation Solution

Implementing local item collections and local secondary indexes, where the primary key is divided into a first and second key portion, allowing for uneven data distribution and enabling operations like atomic updates and pivoting on logically related items, while maintaining application consistency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If data is distributed evenly across computing nodes, then workload balance is improved, but query performance and transaction management deteriorate

Engineering Contradiction:
Improveworkload balanceVSAvoidquery performance
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent segments data into local item collections that are grouped by logical relationships and assigned to specific computing nodes. Instead of evenly distributing individual items across all nodes, the system creates localized collections that maintain data coherence while enabling targeted node assignment, thus resolving the conflict between workload balance and query performance.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements local secondary indexes that are specific to each local item collection and stored on the same computing node. This local quality approach ensures that frequently accessed related items remain co-located, improving query performance without requiring even distribution of all data across the system.

Inventive Principle:
Principle #3Local quality

2Adaptability or versatility

If data is distributed evenly across computing nodes, then system scalability is improved, but transaction support deteriorates

Engineering Contradiction:
Improvesystem scalabilityVSAvoidtransaction support
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent segments the distributed system into autonomous local item collections, each capable of handling transactions independently. This segmentation allows transactions to be processed locally without requiring coordination across all nodes, thereby maintaining transaction support while preserving system scalability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the organizational parameter from even distribution of individual items to grouped distribution of related items (local collections). This parameter change enables the system to maintain both scalability through distributed architecture and transaction support through localized data grouping.

Inventive Principle:
Principle #35Parameter changes

3Ease of manufacture

If data is distributed evenly across computing nodes, then cost reduction is improved, but system complexity deteriorates

Engineering Contradiction:
Improvecost reductionVSAvoidsystem complexity
Core Design Contradiction:
Ease of manufactureVSDevice complexity

Solution Approach 1:

The patent applies local quality by creating local item collections with specific organizational characteristics tailored to their functional requirements. This approach simplifies the system model compared to managing individual distributed items, as collections can be treated as unified units, reducing operational complexity while maintaining the cost benefits of distributed architecture.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS9239852B1Item collections
Publication Date: 2016.01.19 AMAZON TECH INC
  • US9239852B1 patent drawing
  • US9239852B1 patent drawing
  • US9239852B1 patent drawing

AI summary

A distributed database management system comprising a plurality of computing nodes may distribute data evenly across all nodes. A definition of a primary key that divides the primary key into at least a first key portion and a second key portion may be utilized to locate items related by a first key portion to a specific computing node. Application-consistent queries, local transactions and pivoting operations may be performed on items related by a first key portion.