Live Partition Migration via In-Memory Cache Transfer

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing distributed computing environments face challenges in efficiently migrating partitions between servers, leading to prolonged unavailability and impact on load balancing and user experience due to the need for rebuilding persistent state from disk, which can take minutes or tens of minutes, and are prone to downtime during failovers.

Innovation Solution

Implementing live migration by delegating coordination and control to source and destination servers using point-to-point communications, allowing the source server to transfer its in-memory cache to the destination server while continuing to serve the partition, reducing the need for disk operations and minimizing downtime.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the destination server rebuilds persistent state from disk during partition migration, then data consistency is ensured, but migration time increases significantly (minutes or tens of minutes)

Engineering Contradiction:
Improvedata consistencyVSAvoidmigration time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The source server performs preliminary actions by stopping all destructive operations before migration begins. This ensures that the persistent state in the in-memory cache remains valid and can be directly transferred to the destination server without requiring time-consuming reconstruction from disk, thus reducing migration time while maintaining data consistency

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Instead of rebuilding persistent state from disk at the destination server, the patent copies the valid persistent state directly from the source server's in-memory cache to the destination server's in-memory cache. This copying approach eliminates the time-consuming reconstruction process while ensuring data consistency through the preliminary stopping of destructive operations

Inventive Principle:
Principle #26Copying

2Reliability

If the source server stops serving the partition during migration, then data integrity is maintained, but service availability decreases

Engineering Contradiction:
Improvedata integrityVSAvoidservice availability
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The source server continues to serve the partition throughout the migration process by stopping only destructive operations while maintaining service operations. This allows the partition to remain accessible to clients during migration, maintaining service availability while still ensuring data integrity through selective operation stopping

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

The patent dynamically adjusts the operations performed by the source server during migration. It stops destructive operations that would invalidate persistent state but continues service operations that maintain data integrity. This dynamic differentiation allows the system to maintain both data integrity and service availability simultaneously during the migration process

Inventive Principle:
Principle #15Dynamics

3Extent of automation

If the partition master coordinates all migration operations, then centralized control is maintained, but system complexity increases and single point of failure risk increases

Engineering Contradiction:
Improvecentralized controlVSAvoidcoordination complexity
Core Design Contradiction:
Extent of automationVSDevice complexity

Solution Approach 1:

The patent segments the migration coordination responsibilities between the partition master and the source/destination servers. The partition master initiates migration and updates routing, while the source and destination servers independently coordinate the actual data transfer and state synchronization. This segmentation reduces the coordination burden on the partition master and distributes complexity across multiple components

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The source and destination servers perform self-service during migration by autonomously coordinating the transfer of persistent state and synchronization of data. They independently manage the migration process details without requiring continuous partition master intervention, reducing overall system complexity while maintaining centralized initiation and routing control

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10764364B2Live migration of partitions
Publication Date: 2020.09.01 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10764364B2 patent drawing
  • US10764364B2 patent drawing
  • US10764364B2 patent drawing

AI summary

Live migration of partitions can be achieved using server-to-server communications to coordinate and control partition migration and rebuild a persistent state of the partition on a destination server while the partition is served on the source server. The live migration approach breaks the heavy dependency on the partition master by eliminating most of the server-to-master communications, delegating coordination and control of the migration to the source and destination servers. After the migration is initiated by the partition master, the source server sends in-memory cache entries indicating the persistent state of the partition to the destination server. Once transferred, the two servers can cooperate to complete the handover, which loads the partition on the destination server using the cache entries received from the source server. Once the source server offloads the partition, it can redirect traffic for the partition to the destination server by triggering an update to the partition map.