US 11,699,193 B2
Scalable enforcement of aggregation constraints within transactions
Ronald J. Barber, San Jose, CA (US); Vijayshankar Raman, Cupertino, CA (US); Richard Sefton Sidle, Ottawa (CA); and Yuanyuan Tian, San Jose, CA (US)
Assigned to International Business Machines Corporation, Armonk, NY (US)
Filed by International Business Machines Corporation, Armonk, NY (US)
Filed on May 4, 2020, as Appl. No. 16/865,518.
Prior Publication US 2021/0342950 A1, Nov. 4, 2021
Int. Cl. G06Q 40/12 (2023.01); G06F 16/25 (2019.01); G06F 16/901 (2019.01); G06Q 10/087 (2023.01); G06F 16/23 (2019.01); G06Q 20/40 (2012.01); G06Q 30/04 (2012.01)
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
OG exemplary drawing
 
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.