Central Partition Scheduler for Database Split and Move Operations

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data storage systems face challenges in seamlessly scaling and managing large datasets across multiple machines while maintaining high availability and durability, especially in handling increased workloads and resource demands, without disrupting ongoing operations.

Innovation Solution

A distributed database system that implements a central partition management scheduler to dynamically manage partitions by splitting or moving replicas across multiple storage nodes, using a combination of local and global prioritization schemes to optimize resource allocation and ensure seamless scaling and high availability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If partitions are split or moved dynamically to manage large datasets across multiple machines, then scalability and resource allocation are improved, but system complexity and coordination overhead increase

Engineering Contradiction:
ImprovescalabilityVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

A central scheduler is introduced as an intermediary component to manage partition split and move operations across distributed storage nodes. The scheduler receives requests, determines optimal partition placements, coordinates data migration, and updates system metadata, thereby centralizing control logic and reducing peer-to-peer coordination complexity among storage nodes.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system segments partition management operations into distinct phases: request reception, decision-making, execution coordination, and metadata updates. This segmentation allows each component to handle specific tasks independently, improving modularity and making the complex partition management process more manageable and maintainable.

Inventive Principle:
Principle #1Segmentation

2Reliability

If partition management operations are performed dynamically, then availability is maintained during scaling, but operation time and resource contention increase

Engineering Contradiction:
ImproveavailabilityVSAvoidoperation time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by pre-planning partition management operations and preparing target storage nodes before actual data migration begins. Metadata is updated in advance to reflect intended partition placements, and target nodes are pre-configured to receive incoming data, thereby reducing the actual execution time and minimizing disruption to ongoing operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Partition management operations are designed to continue alongside normal read/write operations without interruption. The system maintains continuous service availability by performing data migration in the background, using techniques such as parallel processing and incremental data transfer, ensuring that useful actions (data access and partition management) occur simultaneously without mutual interference.

Inventive Principle:
Principle #20Continuity of useful action

3Productivity

If multiple partition operations are coordinated centrally, then resource allocation is optimized, but scheduling overhead and coordination costs increase

Engineering Contradiction:
Improveresource allocation efficiencyVSAvoidcoordination overhead
Core Design Contradiction:
ProductivityVSUse of energy by stationary object

Solution Approach 1:

The central scheduler dynamically adjusts operational parameters such as batch sizes, priority levels, and timing intervals based on system load and resource availability. By changing these parameters adaptively, the system optimizes resource allocation efficiency while minimizing coordination overhead, balancing the trade-off between centralized control benefits and communication costs.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9489443B1Scheduling of splits and moves of database partitions
Publication Date: 2016.11.08 AMAZON TECH INC
  • US9489443B1 patent drawing
  • US9489443B1 patent drawing
  • US9489443B1 patent drawing

AI summary

A system that implements a data storage service may store data in multiple replicated partitions on respective computing nodes on behalf of clients. A storage node may, based on the amount of provisioned resources on a given storage device or logical volume, identify candidate partition management operations to be performed, and may send information about the operations to a central partition management scheduler. The scheduler may apply a global prioritization scheme to determine an order in which to perform the candidate operations. The order may be based on whether the operations include partition splits or partition moves, whether they aim to reduce provisioned storage capacity or reduce throughput capacity on a storage device or logical volume, whether they conflict with each other, whether the total number of partitions (or replicas thereof) involved in partition management at any given time exceeds a pre-determined limit, or whether they were requested by clients.