CPC G06Q 40/12 (2013.12) [G06F 16/2365 (2019.01); G06F 16/2379 (2019.01); G06F 16/25 (2019.01); G06F 16/9024 (2019.01); G06Q 10/087 (2013.01); G06Q 20/405 (2013.01); G06Q 30/04 (2013.01)] | 20 Claims |
1. A computer system comprising:
a computer processor operatively coupled to computer memory;
an aggregation constraint engine in communication with the computer processor and computer memory and operatively coupled to one or more compute nodes, the aggregation constraint engine configured to enforce an aggregation constraint, including to access program code of the computer memory and process the program code with the computer processor to:
leverage a last committed aggregate value as a current prefix sum for an interval aggregation;
asynchronously receive one or more remotely computed preliminary interval aggregate values from the one or more compute nodes;
assess a preliminary interval aggregate responsive to the asynchronous receipt of the preliminary aggregate values;
adjust the current prefix sum with the one or more received preliminary interval aggregate values, including selective application of a constraint requirement; and
send the adjusted prefix sum to the one or more compute nodes;
a rollback manager configured to access the program code of the computer memory and process the program memory with the computer processor to run on the one or more compute nodes in receipt of the adjusted prefix sum to locally evaluate the aggregation constraint, including identify any local transactions violating the aggregation constraint, and selectively apply a rollback protocol to the one or more violating transactions; and
a director configured to access the program code of the computer memory and process the program memory with the computer processor to replace the last committed aggregate value with a refreshed current prefix sum and apply the refreshed current prefix sum for a subsequent interval aggregation.
|