Distributed Grid Compute Business Rule Routing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing distributed computing systems primarily balance workload based on resource availability, lacking the ability to dynamically adjust processing based on factors other than resources, such as business rules, during application execution.
Innovation Solution
Implementing a system that injects operating rules defined by business models into a computing grid, allowing for dynamic adjustment of the grid's topology and work request filtering based on requestor identity, entitlements, and other information, enabling execution profiles to be defined and modified in real-time.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If workload balancing is based solely on resource availability, then system resource allocation is automated and simplified, but the system cannot dynamically adapt to business rules or non-resource factors
Solution Approach 1:
The system segments workload management into separate components: resource-based scheduling and business-rule-based scheduling. Business rules are encoded as independent policy objects that can be selectively applied to specific workloads or user groups, allowing complex decision logic to be isolated and managed separately from the core scheduling infrastructure.
Solution Approach 2:
A policy decision point acts as an intermediary between workload requests and resource allocation. This mediator evaluates business rules and translates them into scheduling decisions, shielding the complexity of rule evaluation from the resource management layer while enabling flexible adaptation to changing business requirements.
2Adaptability or versatility
If the processing distribution mechanism is fixed, then system stability is maintained, but the system cannot dynamically change execution based on changing business needs
Solution Approach 1:
The system implements dynamic execution profiles that can change during runtime. Business rules can be updated without affecting currently executing workloads, and new rules can be added to take effect for future requests. The scheduling system continuously monitors rule changes and adapts its behavior accordingly while maintaining stability for active jobs.
Solution Approach 2:
Business rules are defined and registered in advance before workload execution begins. The system pre-evaluates rules against incoming workload requests and prepares execution profiles beforehand. This preliminary configuration allows dynamic changes to be made without disrupting ongoing operations, as new rules are applied to future requests while maintaining backward compatibility with existing executions.
3Adaptability or versatility
If static heuristics are used for workload management, then system simplicity is maintained, but the system cannot respond to changing business conditions or pricing models
Solution Approach 1:
The system changes parameters of workload execution based on business conditions. Pricing models, user entitlements, and business rules serve as input parameters that dynamically adjust execution profiles. When business conditions change, the system updates relevant parameters and re-evaluates workloads accordingly, enabling response to changing conditions without requiring complete system redesign.
Solution Approach 2:
The system incorporates feedback loops that monitor business conditions, workload patterns, and resource utilization. This feedback information is used to automatically adjust scheduling decisions and execution profiles. The feedback mechanism enables the system to learn from historical data and adapt to changing business conditions autonomously, reducing the need for manual reconfiguration.
Data Source
AI summary
A method, apparatus, system, article of manufacture, and computer-readable storage medium provide the ability to dynamically modify a distributed computing system workflow. A grid application dynamically receives configuration information including business rules that describe execution profiles. Channels based on the one or more execution profiles are defined. Each channel is configured to execute a work request in a distributed grid compute system (based on an execution profile). A first work request is received from a requestor and includes an identity of the requestor. The first work request is evaluated and the identity of the requestor is applied to direct the first work request to the appropriate channel.


