Scalable Enforcement of Aggregation Constraints Within Transactions
AssigneeInternational Business Machines Corporation
InventorsRonald J. Barber, Vijayshankar Raman, Richard Sefton Sidle, YUANYUAN TIAN
Life of this patent
Estimating the term…
Abstract
Embodiments relate to aggregation operations. More specifically, embodiments relate to enforcing an aggregation constraint across a distributed network of compute nodes responding asynchronously. Each compute node individually processes the local partial aggregate value in parallel and asynchronously communicates with a conflict resolution node (CRN).
Claims20
A computer system comprising:
- a processor operatively coupled to memory;
- an aggregation constraint engine in communication with the processor and operatively coupled to one or more compute nodes, the aggregation constraint engine having one or more tools to perform enforcement of an aggregation constraint, the tools comprising:
- a receiver to leverage a last committed aggregate value as a current prefix sum for an interval aggregation, and asynchronously receive one or more remotely computed preliminary interval aggregate values from the one or more compute nodes;
- an assessment manager in communication with the receiver, the assessment manager to assess a preliminary interval aggregate responsive to the asynchronous receipt of the preliminary aggregate values, the assessment manager to:
- send the current prefix sum to the one or more compute nodes;
- and
- adjust the current prefix sum with the one or more received preliminary interval aggregate values, including selective application of a constraint requirement;
- the rollback manager running on the one or more compute nodes in receipt of the current prefix sum to locally evaluate an 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 to replace and apply the last committed aggregate value as a refreshed current prefix sum for a subsequent interval aggregation.
A computer program product to perform enforcement of an aggregation constraint, the computer program product comprising a computer readable storage medium having program code embodied therewith, the program code executable by a 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 one or more operatively coupled compute nodes;
- assess a preliminary interval aggregate responsive to the asynchronous receipt of the preliminary aggregate values, the assessment including:
- sending the current prefix sum to the one or more compute nodes;
- and
- adjusting the current prefix sum with the one or more received preliminary interval aggregate values, including selectively applying a constraint requirement;
- delegate responsibility of rolling back any violating transactions to the one or more compute nodes in receipt of the current prefix sum to locally evaluate an aggregation constraint, including identify any local transactions in violation of the aggregation constraint, and selectively apply a rollback protocol to the one or more violating transactions;
- and
- replace and apply the last committed aggregate value as a refreshed current prefix sum for a subsequent interval aggregation.
A computer implemented method to perform enforcement of an aggregation constraint, the method comprising:
- leveraging a last committed aggregate value as a current prefix sum for an interval aggregation;
- asynchronously receiving one or more remotely computed preliminary interval aggregate values from one or more operatively coupled compute nodes;
- assessing a preliminary interval aggregate responsive to the asynchronous receipt of the preliminary aggregate values, the assessment including:
- sending the current prefix sum to the one or more compute nodes;
- and
- adjusting the current prefix sum with the one or more received preliminary interval aggregate values, including selectively applying a constraint requirement;
- delegating responsibility of rolling back any violating transactions to the one or more compute nodes in receipt of the current prefix sum to locally evaluate an aggregation constraint, including identifying any local transactions in violation of the aggregation constraint, and selectively applying a rollback protocol to the one or more violating transactions;
- and
- replacing and applying the last committed aggregate value as a refreshed current prefix sum for a subsequent interval aggregation.
Dependencies are inferred from the claim text.