Snapshot Controller for Microservice Database Protection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In micro-service environments, taking snapshots of databases can significantly impact system performance due to the need to freeze databases, leading to potential data corruption or loss, especially when there are many transactions being processed.

Innovation Solution

Implementing a snapshot controller that analyzes transaction information to generate a schedule for issuing snapshot commands based on snapshot policies, such as starting when the transaction queue depth is below a certain level, ensuring no high-priority operations are blocked, and minimizing performance impact.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If database snapshots are taken to preserve data consistency, then data reliability is improved, but system performance deteriorates due to database freezing

Engineering Contradiction:
Improvedata consistencyVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system performs preliminary actions by analyzing transaction queue depth and system state before initiating a snapshot. The snapshot controller evaluates current transaction load and determines optimal timing to start snapshots, ensuring they occur during low-activity periods when performance impact will be minimized.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The snapshot scheduling system dynamically adapts to changing system conditions by continuously monitoring transaction queue depth and adjusting snapshot timing accordingly. The system can reschedule snapshots based on real-time workload conditions, making the snapshot process flexible rather than rigid.

Inventive Principle:
Principle #15Dynamics

2Reliability

If database snapshots are taken frequently to ensure data protection, then data safety is improved, but service disruption increases

Engineering Contradiction:
Improvedata safetyVSAvoidservice disruption
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The snapshot controller implements feedback mechanisms by continuously monitoring transaction queue depth and system state. Based on this feedback, the system intelligently determines when to proceed with snapshots, adjusting the frequency and timing to balance data protection needs with service continuity requirements.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

Before executing snapshots, the system performs preliminary evaluation of system conditions including transaction queue depth analysis. This preliminary action ensures snapshots are only initiated when system state indicates minimal service disruption will occur.

Inventive Principle:
Principle #10Preliminary action

3Manufacturing precision

If database freezing is implemented during snapshots to prevent data corruption, then data consistency is improved, but transaction processing speed deteriorates

Engineering Contradiction:
Improvedata consistencyVSAvoidtransaction processing speed
Core Design Contradiction:
Manufacturing precisionVSSpeed

Solution Approach 1:

The system performs preliminary analysis of transaction queue depth and system workload before initiating database freezing for snapshots. By evaluating current conditions in advance, the system ensures freezing occurs only when transaction processing speed will not be critically impacted.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The snapshot execution is made dynamic by continuously monitoring system state and transaction characteristics. The system can adjust freezing duration and timing based on real-time conditions, optimizing the balance between data consistency requirements and transaction processing speed.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11307939B2Low impact snapshot database protection in a micro-service environment
Publication Date: 2022.04.19 RED HAT INC
  • US11307939B2 patent drawing
  • US11307939B2 patent drawing
  • US11307939B2 patent drawing

AI summary

An implementation of the disclosure provides a method including identifying, by a processing device, a plurality of transactions in a transaction queue within a cloud computing environment, each of the transactions comprising an operation associated with a storage device of the cloud computing environment, comparing a priority status of at least one operation comprised by the transaction queue with a status threshold level associated with the snapshot policy, and responsive to determining that the priority status of at least one operation meets the status threshold level, providing, by the processing device subsequent to an execution of the at least one operation, a request to generate a point-in-time snapshot of at least a portion of the storage device, the point-in-time snapshot comprising state information corresponding to an application in the storage device.