Dynamic Lease Assignments in Time-Series Database Clusters

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed time-series databases face challenges in managing and scaling resources efficiently, particularly in provisioning, administering, and managing large datasets, which leads to increased costs and complexity due to the scale and size of data sets.

Innovation Solution

Implementing dynamic lease assignments, heat balancing, and partition management across storage nodes and clusters, allowing for efficient distribution and management of time-series data using tile leases, random assignment mechanisms, and minimizing data movement during splits and merges, without relying on a control plane.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If dynamic lease assignments are implemented across storage nodes, then availability and fault tolerance are improved, but system complexity increases

Engineering Contradiction:
ImproveavailabilityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements dynamic lease assignments where storage nodes can acquire and release leases on tiles based on current system state and workload conditions. This dynamic behavior allows the system to adapt to failures and balance loads automatically, improving availability without requiring a centralized control plane to manage every state change.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

Storage nodes autonomously manage their own leases and make decisions about acquiring or releasing tiles based on local conditions and heat metrics. This self-service approach distributes the management complexity across individual nodes rather than concentrating it in a central controller, improving fault tolerance while managing system complexity through decentralized autonomy.

Inventive Principle:
Principle #25Self-service

2Productivity

If heat balancing is performed across storage nodes, then performance is improved, but data movement increases network bandwidth usage

Engineering Contradiction:
ImproveperformanceVSAvoidnetwork bandwidth usage
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent implements heat balancing by allowing storage nodes to acquire leases on tiles located in database clusters with lower heat (lower workload). This local optimization at each node level distributes data movement across the network in a controlled manner, improving overall performance while minimizing unnecessary network bandwidth consumption by only moving data when it balances system load.

Inventive Principle:
Principle #3Local quality

3Reliability

If partition management with tile leases is implemented, then fault tolerance is improved, but device complexity increases

Engineering Contradiction:
Improvefault toleranceVSAvoiddevice complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent divides the database into discrete tiles that can be independently leased to storage nodes. This segmentation allows fine-grained control over data distribution and fault tolerance - if a node fails, only the specific tiles it was leased affect are impacted, not the entire system. The lease mechanism provides simple ownership tracking without complex inter-node dependencies.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces leases as an intermediary mechanism between storage nodes and database clusters. This lease abstraction simplifies fault tolerance by providing clear ownership semantics - when a node fails, its leases are simply released and can be reacquired by other nodes. This intermediary layer manages the complexity of data redistribution without requiring complex coordination protocols.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Productivity

If inline data path operations are allowed, then performance is improved, but system complexity increases

Engineering Contradiction:
ImproveperformanceVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent establishes lease assignments before data operations occur. Storage nodes acquire leases in advance, which pre-authorizes them to perform operations on specific tiles. This preliminary action eliminates the need for complex authorization checks during data operations, improving performance while keeping the system manageable through clear pre-established ownership rules.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11366598B1Dynamic lease assignments in a time-series database
Publication Date: 2022.06.21 AMAZON TECH INC
  • US11366598B1 patent drawing
  • US11366598B1 patent drawing
  • US11366598B1 patent drawing

AI summary

Methods, systems, and computer-readable media for dynamic lease assignments in a time-series database are disclosed. A time-series database determines an assignment of a lease for a tile representing spatial and temporal boundaries of time-series data. The lease is assigned to a first storage node of a plurality of storage nodes. The time-series database routes the elements of the time-series data within the spatial and temporal boundaries to the first storage node based at least in part on the assignment of the lease. The first storage node stores the elements of the time-series data into the tile in a database cluster. Write requests by the first storage node to the tile are validated by the database cluster based at least in part on the assignment of the lease.