Database Partition Replica Storage Node Selection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current database systems face challenges in seamlessly scaling and managing large datasets across multiple machines while maintaining high durability and availability, especially in handling fluctuations in resource usage and workload, which can lead to performance issues and inefficiencies.

Innovation Solution

A distributed database system that dynamically allocates and reallocates resources by partitioning data across multiple storage nodes, allowing for automatic repartitioning and resource balancing, supported by a Web-based service that provides APIs for efficient data management and storage, enabling seamless scaling and high availability through replication and consistent performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is distributed across multiple storage nodes, then availability and durability are improved, but system complexity increases

Engineering Contradiction:
ImproveavailabilityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments data into partitions that are distributed across multiple storage nodes. Each partition can be independently managed, replicated, and moved, which improves availability and durability while keeping individual node complexity manageable. The segmentation allows the system to achieve high reliability through distribution without proportionally increasing overall system complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements a universal data management system that handles multiple functions (storage, replication, partitioning, movement, load balancing) across all storage nodes. This multi-functional approach consolidates complexity into standardized processes that can be applied uniformly across the distributed system, improving reliability while controlling the growth of system complexity through reuse of common mechanisms.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Productivity

If data partitions are dynamically moved between storage nodes, then load balancing and scalability are improved, but data consistency and operational complexity increase

Engineering Contradiction:
ImprovescalabilityVSAvoidoperational complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements dynamic partition movement capabilities that allow data partitions to be automatically relocated between storage nodes based on current system conditions, workload demands, and availability requirements. This dynamic approach enables the system to scale flexibly and maintain optimal performance without manual intervention, improving productivity while managing operational complexity through automated decision-making algorithms.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system incorporates feedback mechanisms that continuously monitor storage node performance, data access patterns, and system load, then use this information to make intelligent decisions about partition movement and replication. This feedback-driven approach allows the system to automatically maintain data consistency and optimize distribution without requiring complex manual operational procedures, thereby improving scalability while controlling operational complexity.

Inventive Principle:
Principle #23Feedback

3Reliability

If multiple replicas of partitions are maintained, then durability and availability are improved, but storage resource consumption increases

Engineering Contradiction:
ImprovedurabilityVSAvoidstorage resource consumption
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent applies local quality by placing replicas of data partitions on storage nodes with different failure modes or in different physical locations. Instead of uniform replication, the system strategically positions replicas based on local characteristics of storage nodes, such as their failure profiles, geographic locations, or workload characteristics. This approach improves durability and availability while optimizing storage resource consumption by avoiding redundant replication on nodes with similar failure risks.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS9460185B2Storage device selection for database partition replicas
Publication Date: 2016.10.04 AMAZON TECH INC
  • US9460185B2 patent drawing
  • US9460185B2 patent drawing
  • US9460185B2 patent drawing

AI summary

A system that implements a data storage service may store data in multiple replicated partitions on respective storage nodes. The selection of the storage nodes (or storage devices thereof) on which to store the partition replicas may be performed by administrative components that are responsible for partition management and resource allocation for respective groups of storage nodes (e.g., based on a global view of resource capacity or usage), or the selection of particular storage devices of a storage node may be determined by the storage node itself (e.g., based on a local view of resource capacity or usage). Placement policies applied at the administrative layer or storage layer may be based on the percentage or amount of provisioned, reserved, or available storage or IOPS capacity on each storage device, and particular placements (or subsequent operations to move partition replicas) may result in an overall resource utilization that is well balanced.