Quiescence Manager for Application Data Consistency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

As computer systems become increasingly complex and manage large quantities of information, ensuring the reliability and availability of critical applications and data becomes challenging, especially when numerous applications access and modify underlying data, making it difficult to achieve a consistent state for system management tasks like backups.

Innovation Solution

A system and method for cooperative application quiescence, where a quiescence manager coordinates applications to complete outstanding I/O requests and flush internal buffers, allowing for coordinated quiescence of applications in response to a quiescence request, ensuring data integrity and consistency during operations like backups.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple applications simultaneously access and modify critical data, then application functionality and productivity are improved, but data consistency and reliability deteriorate during backup operations

Engineering Contradiction:
Improveapplication functionalityVSAvoiddata consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system performs preliminary actions by sending quiescence requests to applications before backup operations begin. These requests cause applications to flush their internal buffers and complete outstanding I/O requests, ensuring that all data modifications are persisted to storage before the backup captures the data state, thus guaranteeing data consistency without sacrificing application functionality

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The quiescence manager acts as an intermediary between the backup system and multiple applications. It receives backup requests, coordinates quiescence across all applications accessing the data, and manages the timing of buffer flushes and I/O completions. This intermediary enables simultaneous application access while ensuring data consistency during backup by orchestrating the quiescence state of all applications

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If applications flush internal buffers and complete outstanding I/O requests, then data integrity is improved, but system performance and productivity temporarily deteriorate

Engineering Contradiction:
Improvedata integrityVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system implements periodic action by triggering buffer flushes and I/O completions only at specific moments when backup operations are initiated, rather than continuously. The quiescence manager periodically sends requests to applications to quiesce their data access, allowing normal high-performance operation between backup events while ensuring data integrity when backups occur

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The system performs preliminary buffer flushing and I/O completion actions just before the backup operation begins, rather than continuously during the entire backup process. This timing strategy ensures data integrity is established beforehand, allowing the backup to proceed without being blocked by ongoing application I/O operations, thus minimizing performance impact

Inventive Principle:
Principle #10Preliminary action

3Reliability

If the system coordinates quiescence of multiple applications, then backup reliability is improved, but system complexity increases

Engineering Contradiction:
Improvebackup reliabilityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The quiescence manager serves as a centralized intermediary that handles the complexity of coordinating multiple applications. Instead of having applications directly communicate with each other or the backup system, all quiescence coordination goes through this single intermediary, which maintains knowledge of which applications access which data and orchestrates their quiescence in the appropriate sequence, thereby managing system complexity centrally

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The quiescence manager is designed as a universal component that can handle quiescence requests for any number of different applications accessing various types of data. It implements a general-purpose coordination mechanism that works across diverse application types and data structures, eliminating the need for application-specific backup coordination logic and reducing overall system complexity through standardization

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS7421714B1System and method for cooperative application quiescence in a computing environment
Publication Date: 2008.09.02 ARCTERA US LLC
  • US7421714B1 patent drawing
  • US7421714B1 patent drawing
  • US7421714B1 patent drawing

AI summary

A system and method for cooperative application quiescence in a computing environment. In one embodiment, a system may include a storage device configured to store data, a plurality of applications each of which is configured to issue input/output (I/O) requests to the storage device, and a quiescence manager configured to coordinate quiescence of at least a portion of the plurality of applications in response to receiving a quiescence request, where quiescence of a given application may include completing outstanding I/O requests issued by the given application.