Runtime Asset Data Caching for Fast Industrial Failover
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current industrial plant systems face challenges in achieving sub-second failover for client applications due to high client application display callup times and increased costs in active-active configurations, especially when switching between primary and secondary workstations in server-based architectures.
Innovation Solution
A computer-implemented method and cache management system that distributes runtime asset data among workstations, replicating and updating data locally and remotely to ensure high availability, using configurable parameters and evaluating data freshness based on value, quality, and timestamp attributes to maintain up-to-date information views.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If a serverless architecture is used where client applications fetch runtime data from controllers on demand, then hardware and software costs are reduced, but client application display callup time increases to about eight seconds for a display having 1000 I/O references
Solution Approach 1:
The patent implements preliminary action by having client applications pre-fetch and cache runtime data from controllers before it is actually needed for display. This allows the data to be ready in local memory when the display is requested, reducing callup time from 8 seconds to under 1 second while maintaining the cost-effective serverless architecture.
Solution Approach 2:
The patent introduces an intermediary caching mechanism between the controller and the client application display. This cache acts as a buffer that stores runtime data temporarily, allowing fast retrieval without requiring direct real-time communication with the controller, thus reducing display callup time while keeping the serverless architecture.
2Loss of time
If an active-active configuration with a middle layer cache is used to reduce display callup time, then client application display callup time decreases to under one second, but failover time increases and additional hardware and software licenses are needed
Solution Approach 1:
The patent uses copying by creating redundant copies of the client application on multiple workstations rather than using a complex active-active configuration. Each workstation can independently run the application and access cached data, enabling failover without requiring additional hardware licenses or complex middle-layer infrastructure.
Solution Approach 2:
The patent implements discarding and recovering by allowing the primary workstation to be discarded (failed) and the application to be recovered on a secondary workstation. The cached data persists across workstations, enabling seamless failover without the complexity of active-active configurations or additional licensing requirements.
3Reliability
If an active-passive configuration is used with a middle layer cache, then failover capability is provided, but failover time is increased
Solution Approach 1:
The patent applies preliminary action by pre-configuring multiple workstations with identical client applications and cached data before failover is needed. When failover occurs, the secondary workstation is already prepared and can immediately take over, reducing failover time while maintaining reliability.
Solution Approach 2:
The patent enables self-service failover where the secondary workstation automatically assumes the primary role without requiring complex coordination or extended failover procedures. The cached data and application state are readily available on the secondary system, allowing it to service requests immediately upon failover.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A method is provided for managing availabillity of runtime asset data used by client applications hosted on workstations of an industrial system, the method including distributing runtime asset data about assets of the industrial system received at the plurality of workstations among runtime asset data caches associated with the client applications. At least a portion of locally stored runtime asset data stored on a local runtime asset data cache is replicated and stored remotely on the runtime asset data cache associated with another client application. The locally stored runtime asset data is periodically evaluated to determine if it is up-to-date, and in response to determining it is not up-to-date, the locally stored runtime asset data is updated by requesting and retrieving a replicated and updated version of the locally stored runtime asset data from the runtime asset data cache remotely storing the replicated version.