Sidecar Application Consistent Snapshots for Containerized Data Protection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Containerized applications present challenges for data protection due to their frequent updates and mobility, which can lead to data corruption and loss, especially for stateful applications, as existing systems struggle to maintain consistency and manage backup operations effectively in dynamic environments.

Innovation Solution

Deploying a sidecar application that provides consistent snapshots and performs backup operations by ensuring data integrity through consistency checks, freezing I/O operations, and managing metadata, thereby facilitating reliable backup and restore processes within containerized platforms.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If containers are updated frequently and moved between nodes, then application adaptability and deployment flexibility are improved, but data consistency and protection reliability deteriorate

Engineering Contradiction:
Improveapplication deployment flexibilityVSAvoiddata consistency
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The sidecar application performs preliminary actions by detecting container lifecycle events (creation, startup, termination) and proactively initiating snapshot operations before data corruption can occur. The system freezes I/O operations and captures storage state in advance, ensuring data consistency is maintained before the container moves or updates, thus resolving the contradiction between deployment flexibility and data consistency.

Inventive Principle:
Principle #10Preliminary action

2Ease of manufacture

If traditional backup systems are used on containerized applications, then backup functionality is provided, but data loss and corruption risks increase due to container mobility and frequent updates

Engineering Contradiction:
Improvebackup functionalityVSAvoiddata protection
Core Design Contradiction:
Ease of manufactureVSReliability

Solution Approach 1:

The sidecar application acts as an intermediary component deployed within the same container environment. It monitors container lifecycle events and coordinates with storage systems to perform snapshots and backups. This intermediary approach enables reliable data protection by bridging the gap between mobile containers and static backup systems, preventing data loss while maintaining container mobility and update capabilities.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If containers are made mobile and updatable, then system productivity and resource utilization are improved, but the complexity of data protection operations increases

Engineering Contradiction:
Improveresource utilizationVSAvoiddata protection operation complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The sidecar application implements self-service by autonomously detecting container lifecycle events and automatically initiating snapshot and backup operations without external intervention. It manages its own execution context, monitors storage I/O operations, and coordinates with backup systems independently. This automation reduces the complexity of data protection operations while maintaining high productivity and resource utilization in containerized environments.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS12079091B2Application consistent snapshots as a sidecar of a containerized application
Publication Date: 2024.09.03 EMC IP HLDG CO LLC
  • US12079091B2 patent drawing
  • US12079091B2 patent drawing
  • US12079091B2 patent drawing

AI summary

Systems and methods for performing data protection operations in a containerized application. A sidecar application is associated with or attached to a main application. The sidecar application has access to the resources of the main application. Backup requests are handled by the sidecar so that the application, which may be stateful, can be placed in a consistent state prior to performing the backup operation. The backup operation is then performed on the consistent application or on the data that is quiesced.