Snapshot Management for Distributed Database Rollback

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current systems lack an efficient method for creating and managing snapshots of distributed databases, making it difficult to revert to previous states without risking critical data corruption during testing or configuration changes.

Innovation Solution

A method involving a storage manager that coordinates snapshot creation by quiescing compute nodes, creating snapshots of storage volumes, and managing storage nodes to isolate and preserve snapshot states, allowing for efficient rollback and cloning of database states.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If snapshots are created for distributed databases, then the ability to revert to previous states is improved, but the complexity of coordinating multiple storage nodes and compute nodes deteriorates

Engineering Contradiction:
Improveability to revert to previous statesVSAvoidcomplexity of coordinating storage nodes and compute nodes
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the snapshot creation process into distinct phases: quiescing compute nodes to stop write operations, creating snapshots at storage nodes, and managing the snapshot lifecycle independently at each node. This segmentation allows each component to perform its function without complex inter-coordination, reducing overall system complexity while maintaining reliability

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies preliminary action by quiescing compute nodes before creating snapshots. This ensures that no write operations are in progress when the snapshot is taken, guaranteeing data consistency without requiring complex coordination during the actual snapshot creation. The preliminary quiescing action simplifies the snapshot process itself

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If testing and configuration changes are performed on distributed databases, then system adaptability is improved, but the risk of data corruption deteriorates

Engineering Contradiction:
Improveability to test and make configuration changesVSAvoidrisk of data corruption
Core Design Contradiction:
Adaptability or versatilityVSObject-affected harmful factors

Solution Approach 1:

The patent creates snapshot copies of the distributed database state at storage nodes. These snapshots serve as isolated copies that can be used for testing and configuration changes without affecting the critical production data. The copying principle allows safe experimentation while preserving data integrity

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent extracts the snapshot creation and management functionality into separate storage nodes that are independent from the compute nodes. This extraction allows testing and configuration changes to be performed on snapshots without risking corruption of the live database, as the snapshots are isolated and managed separately

Inventive Principle:
Principle #2Taking out (Extraction)

3Reliability

If snapshots are stored at storage nodes instead of compute nodes, then system reliability is improved, but the complexity of managing storage volumes deteriorates

Engineering Contradiction:
Improvesnapshot preservationVSAvoidcomplexity of managing storage volumes
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements self-service by enabling storage nodes to create and manage their own snapshots independently. Each storage node maintains its own snapshot data and can manage snapshot lifecycles without requiring complex centralized coordination. This self-service approach improves reliability through distributed autonomy while managing complexity through local decision-making

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11036439B2Automated management of bundled applications
Publication Date: 2021.06.15 RAKUTEN SYMPHONY INC
  • US11036439B2 patent drawing
  • US11036439B2 patent drawing
  • US11036439B2 patent drawing

AI summary

A new snapshot of a storage volume is created by instructing computing nodes to suppress write requests. Once pending write requests from the computing nodes are completed, storage nodes create a new snapshot for the storage volume by allocating a new segment to the new snapshot and finalizes and performs garbage collection with respect to segments allocated to the previous snapshot. An orchestration layer implements a bundled application that is provisioned with virtualized storage and computation resources. A snapshot of the bundled application may be created and used to rollback or clone the application. Clones snapshots of storage volumes may be gradually populated with data from prior snapshots to reduce loading on a primary snapshot. Chaos testing of the bundled application may be performed and storage volumes may be created, expanded, and/or moved based on usage of the bundled application.