Distributed Asynchronous Calculation System with Revision Numbers
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Large-scale distributed asynchronous calculations in networked environments face challenges with communication delays, logistical issues, and data integrity, particularly in scenarios like SEC document preparation where hundreds or thousands of variables and individuals are involved, leading to significant delays and potential inconsistencies.
Innovation Solution
A system and method utilizing global and local revision numbers to manage and update elements in a distributed network, allowing for efficient and robust calculations by sending update signals and using an update flag or message queuing system to manage dependencies and prevent unnecessary recalculations, while ensuring data integrity and consistency across the network.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If distributed asynchronous calculations are performed across multiple networked computers, then productivity and scalability are improved, but communication delays and data integrity issues worsen
Solution Approach 1:
The system performs preliminary actions by pre-calculating dependency relationships and establishing update rules before actual calculations occur. When a source element changes, the system has already predetermined which target elements need updating and in what order, eliminating the need for complex real-time coordination across distributed systems.
Solution Approach 2:
The system implements feedback mechanisms where target elements send acknowledgments back to source elements after successful updates. This feedback loop ensures that all distributed calculations are properly coordinated and that data integrity is maintained across the networked environment, resolving the reliability issue while preserving productivity.
2Productivity
If the number of users and variables increases to handle large-scale calculations, then productivity improves, but device complexity and communication overhead worsen
Solution Approach 1:
The system segments the distributed calculation network into independent source elements and target elements with clearly defined relationships. Each element operates autonomously based on its dependency rules, allowing the system to scale to handle large numbers of users and variables without proportionally increasing overall system complexity.
Solution Approach 2:
Target elements automatically detect and respond to changes in their dependent source elements without requiring centralized coordination. Each element serves itself by monitoring its own update flags and executing calculations independently, which enables the system to handle large-scale computations while keeping communication overhead manageable.
3Reliability
If synchronous updates are used to ensure data consistency, then data integrity is improved, but communication time and productivity worsen
Solution Approach 1:
The system transitions from static synchronous updating to dynamic asynchronous updating. Target elements update themselves dynamically when source elements change, rather than waiting for coordinated synchronous updates. This dynamic approach maintains data consistency through dependency tracking while eliminating the time delays inherent in synchronous systems.
Solution Approach 2:
The system establishes update dependencies and rules in advance, allowing target elements to know exactly when and how to update themselves. This preliminary configuration enables asynchronous updates to proceed automatically without requiring real-time coordination, thus maintaining data consistency while reducing update delays.
Data Source
AI summary
A method and associated system are provided for performing calculations in a distributed networked environment, comprising: updating a source element on a first computer; sending a calculate update signal to a target calculated element for updating on a target element computer that may be the first computer or a second computer connected to the first computer that uses the source element in a calculation; obtaining the updated source element by a process on the target element computer associated with the target calculated element in response to the sending; and performing a calculation to update the target calculated element using the obtained updated source element.


