Metering Framework for Disaster Recovery Resource Utilization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Distributed data processing systems in disaster recovery environments face challenges with unpredictable resource demands, leading to back-pressure and timeouts due to inefficient resource allocation and scaling, particularly in workflows like data replication and snapshot generation.
Innovation Solution
A metering framework that uses predictive and real-time scheduling to manage resource consumption by organizing operations into jobs with defined properties like load, priority, and flow identification, allowing for efficient resource utilization and avoiding contention through customizable logic and priority queuing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If threshold limits or caps are implemented on resources allocated to services, then resource overconsumption is prevented, but back-pressure build-up occurs due to queuing of operation requests
Solution Approach 1:
The system dynamically adjusts resource allocation thresholds based on current system state and workflow priorities. Instead of static caps, the resource limits are flexible and adapt to changing conditions, allowing high-priority workflows to obtain more resources when needed while preventing overconsumption by lower-priority workflows. This dynamic adjustment prevents back-pressure build-up while maintaining resource control.
Solution Approach 2:
The system changes resource allocation parameters in real-time based on workflow characteristics, system load, and priority levels. By modifying allocation parameters dynamically rather than using fixed thresholds, the system can accommodate varying resource demands without causing queuing delays or back-pressure, thus resolving the contradiction between resource control and workflow completion time.
2Reliability
If spare resources are reserved to support high priority workflows, then high priority workflows are supported, but sophisticated prediction logic and heuristics are required which may result in failures or non-optimal resource consumption
Solution Approach 1:
The system implements feedback mechanisms that monitor resource consumption patterns and workflow performance in real-time. This feedback information is used to continuously refine resource allocation decisions without requiring complex prediction logic. The feedback-driven approach allows the system to adapt to changing conditions and support high-priority workflows reliably while avoiding the complexity and potential failures associated with sophisticated prediction algorithms.
3Productivity
If batched or scheduled workflows are implemented, then resource demands are consolidated, but system capacities are haphazardly exceeded due to high resource demands at intermediate stages
Solution Approach 1:
The system performs preliminary resource reservation and capacity planning before workflows are batched or scheduled. By pre-allocating resources and setting capacity limits in advance, the system ensures that batched workflows will not exceed system capacities at any intermediate stage. This preliminary action maintains both high throughput from workflow batching and reliable system capacity compliance.
Data Source
AI summary
A framework is described that improves resource utilization during operations executing within workflows of the distributed data processing system (e.g., having a plurality of interconnected nodes) in a disaster recovery (DR) environment configured to support synchronous and asynchronous (i.e., heterogeneous) DR workflows (e.g., generating snapshots and replicating data) that include synchronous replication, asynchronous replication, nearsync (i.e., short duration snapshots of metadata) replication and migration of data objects associated with the workflows for failover (e.g., replication and/or migration) to a secondary site in the event of failure of the primary site. The framework meters (regulates) execution of the operations directed to the workloads so as to efficiently use the resources in a manner that allows timely progress (completion) of certain (e.g., high-frequency) operations and reduction in blocking (stalling) of other (e.g., low-frequency) operations by avoiding unnecessary resource hoarding/consumption and contention. Notably, the framework also provides metering and tuning of properties during execution of the workflows and maintains their state to provide for recovery.


