Data Center Server Recovery for ACID Consistency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Data centers face challenges in maintaining atomicity, consistency, isolation, and durability (ACID) properties during transactions, especially when dealing with server failures, configuration changes, or scaling, as existing solutions often result in poor performance or availability issues.

Innovation Solution

Implementing a recovery process that enables lock-free reads and committed transactions to retain ACID properties across configuration changes, using replication in distributed memory, non-volatile memory, and a configuration manager to manage server configurations and transactions, ensuring atomicity, consistency, isolation, and durability through a novel transaction protocol and recovery mechanism.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a data center scales up by adding more servers to meet demand, then productivity increases, but reliability deteriorates due to increased complexity of managing configurations and potential failures

Engineering Contradiction:
Improvecloud computing service capacityVSAvoidservice availability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system divides the data center into clusters of servers, each with its own configuration manager. This segmentation allows independent management and recovery of individual clusters, isolating failures and enabling scalable growth without compromising overall system reliability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The recovery process implements continuous monitoring of server configurations and transaction states, with automatic feedback loops that detect configuration changes or failures and trigger appropriate recovery actions. This ensures the system self-corrects to maintain reliability as it scales.

Inventive Principle:
Principle #23Feedback

2Reliability

If the data center implements traditional transaction protocols to ensure ACID properties, then reliability improves, but performance deteriorates due to locking overhead and coordination complexity

Engineering Contradiction:
ImproveACID property maintenanceVSAvoidtransaction throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system extracts the locking mechanism from the transaction protocol, replacing it with a lock-free approach using versioned data and optimistic concurrency control. This removes the performance bottleneck while maintaining ACID properties through a different mechanism that allows parallel transaction execution.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent replaces the mechanical locking system with a software-based version control and conflict detection mechanism. This substitution eliminates physical lock contention while preserving transaction isolation and consistency through logical checks and version management.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Device complexity

If the data center removes servers for maintenance or upgrade, then device complexity reduces and costs decrease, but reliability deteriorates due to potential service outages

Engineering Contradiction:
Improveserver infrastructure managementVSAvoidservice continuity
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The system performs preliminary actions by replicating server configurations and transaction states before maintenance begins. Configuration managers prepare backup states and ensure redundancy is in place, allowing servers to be removed or upgraded without service interruption.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The recovery process enables servers to be temporarily discarded for maintenance while their functionality is recovered through automatic failover to standby servers or through rapid reconfiguration. The system discards the old configuration, performs maintenance, and recovers service through the new configuration.

Inventive Principle:
Principle #34Discarding and recovering

Data Source

PatentUS10678445B2Recovery in data centers
Publication Date: 2020.06.09 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10678445B2 patent drawing
  • US10678445B2 patent drawing
  • US10678445B2 patent drawing

AI summary

A server at a cluster of servers in a data center is described. The server comprises a memory which is part of a distributed memory of the cluster. The server has at least one processor executing transactions and lock-free reads on software objects stored in regions of the distributed memory, the software objects and details of the transactions being replicated in the distributed memory. The server has a network interface card arranged to receive a message indicating a new configuration of the cluster comprising addition, removal or potential failure of at least one of the other servers. The processor is configured to use a recovery process which enables the lock-free reads and committed ones of the transactions to retain the properties of atomicity, consistency, isolation and durability across configuration changes.