Database Server Resource Identifier Allocation During Network Partitions

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In the context of service providers managing resources, network partitions can lead to data corruption and unauthorized data leakage due to the assignment of the same resource identifiers to multiple resources, as existing database servers may inadvertently reuse identifiers.

Innovation Solution

Implementing a system where each database server is assigned a distinct resource identifier range, with a centralized management approach that ensures unique identifiers are allocated and updated across servers, even in the event of a network partition, by converting read-only servers to read-write servers and managing identifier ranges to prevent overlap.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a new database server is assigned to assign unique identifiers during network partition, then service continuity is improved, but identifier uniqueness is compromised due to potential overlap with existing servers

Engineering Contradiction:
Improveservice continuityVSAvoididentifier uniqueness
Core Design Contradiction:
ReliabilityVSManufacturing precision

Solution Approach 1:

The patent divides the identifier namespace into distinct ranges and assigns each database server a specific segment. During normal operation, a single server manages identifiers. During network partition, the system segments authority by enabling multiple servers to operate independently with non-overlapping identifier ranges, preventing conflicts while maintaining service continuity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary assignment of identifier ranges to database servers before network partitions occur. Each server is pre-configured with knowledge of its authorized identifier range, allowing it to operate autonomously during partitions without risking identifier duplication. This advance preparation ensures both service continuity and identifier uniqueness.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If multiple database servers operate independently during network partition, then service availability is improved, but data consistency deteriorates due to potential identifier conflicts

Engineering Contradiction:
Improveservice availabilityVSAvoiddata consistency
Core Design Contradiction:
ProductivityVSStability of the object's composition

Solution Approach 1:

The patent implements local quality by allowing each database server to have different operational characteristics during network partition. Each server operates with its own locally-valid identifier range, enabling independent service delivery in different network segments while maintaining data consistency through the non-overlapping range assignment.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The identifier range assignment acts as an intermediary mechanism that mediates between multiple independently operating database servers. By establishing clear boundaries through non-overlapping ranges, the system enables servers to operate autonomously without direct communication while preventing identifier conflicts that would compromise data consistency.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10789273B1Resource identifier allocation during network partitions
Publication Date: 2020.09.29 AMAZON TECH INC
  • US10789273B1 patent drawing
  • US10789273B1 patent drawing
  • US10789273B1 patent drawing

AI summary

A database management system provisions a database server that replicates assignments of resource identifiers to resources that are managed by another database server. Based at least in part on assignment of existing sets of identifiers to other database servers, the database management system identifies a set of identifiers that is distinct from these existing sets and assigns this set of identifiers to the provisioned database server. If the database management system detects an event that causes the database server to lose its ability to receive these assignments of identifiers from the other server, the database management system enables the database server to assign identifiers from its assigned set of identifiers.