Distributed Storage Reservation for Data Recovery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In distributed database systems, the probability of data loss increases with the scale of the system due to node failures, and existing recovery methods often bottleneck due to storage capacity constraints, leading to inefficient data recovery and potential data unavailability.

Innovation Solution

The method involves identifying reserved storage capacity in each connected computer to enable multiple destination recovery, provisioning additional storage capacity as needed, and using pseudo nodes to distribute data storage weights, ensuring sufficient storage space for recovering unavailable node data without violating capacity constraints.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If data is recovered to a single destination node, then storage capacity constraints are easier to manage, but recovery time increases and productivity decreases

Engineering Contradiction:
Improverecovery timeVSAvoidstorage capacity management
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent segments the recovery destination into multiple nodes instead of using a single destination node. This allows parallel recovery operations to occur simultaneously across multiple nodes, thereby reducing overall recovery time while distributing the storage capacity requirements across the network.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension to the recovery process by enabling multi-destination recovery. Instead of recovering data along a single path to one node, the system recovers data across multiple parallel paths to multiple nodes simultaneously, effectively adding a spatial dimension to the recovery operation.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Reliability

If multiple nodes store replicas of the database, then data availability improves, but the probability of simultaneous node failure increases

Engineering Contradiction:
Improvedata availabilityVSAvoidprobability of simultaneous node failure
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The patent performs preliminary actions by pre-identifying multiple candidate destination nodes before a failure occurs. When a node fails, the system can immediately begin recovery to pre-identified destinations without delay, reducing the window of vulnerability and maintaining higher availability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent prepares cushioning capacity in advance by identifying multiple nodes with available storage capacity before failures occur. This beforehand preparation ensures that when failures happen, there is already designated capacity ready to receive recovered data, preventing bottlenecks and reducing recovery time.

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

3Productivity

If recovery bandwidth is increased to reduce recovery time, then productivity improves, but network capacity constraints are violated

Engineering Contradiction:
Improverecovery speedVSAvoidnetwork capacity constraints
Core Design Contradiction:
ProductivityVSObject-affected harmful factors

Solution Approach 1:

The patent segments the recovery bandwidth across multiple destination nodes instead of concentrating all bandwidth on a single node. This segmentation allows the total recovery throughput to increase while each individual node receives a manageable portion of the network capacity, preventing any single node from being overwhelmed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent merges multiple recovery operations into parallel streams to multiple destinations. By combining the recovery efforts across several nodes simultaneously, the system achieves higher overall productivity while distributing the network load, thereby respecting individual network capacity constraints.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS10754735B2Distributed storage reservation for recovering distributed data
Publication Date: 2020.08.25 SALESFORCE INC
  • US10754735B2 patent drawing
  • US10754735B2 patent drawing
  • US10754735B2 patent drawing

AI summary

Distributed storage reservation for distributed data recovery is described. A system identifies a total number of connected computers, a storage capacity of each connected computer, and a maximum storage capacity of the identified storage capacities of the connected computers. The system determines a reserved storage capacity based on the maximum storage capacity and a reduced total number of the connected computers. The system provisions the reserved storage capacity in each connected computer. The system stores replicas of a database on the connected computers and on multiple computers, the multiple computers being the same as or different than the connected computers. The system identifies that a connected computer storing a replica of the database is unavailable. The system restores a replica of the database from at least one computer storing one replica to the reserved storage capacity in each of multiple available connected computers.