Event-driven architecture using rolling aggregates
AssigneeVisa International Service Association
InventorMinghua Xu
Life of this patent
Estimating the term…
Abstract
Described herein are systems and methods in which key values associated with events are aggregated as those events are processed by an event processing engine. In some embodiments, the system maintains a number of key-value mappings associated with a plurality of key values to be updated. Each key value may be associated with a key log that can be accessed to quickly generate useful information while minimizing the number of operations needed to generate that information. The key log may be updated each time that the associated key value is updated in order to maintain a running history of key-value updates.
Claims20
A method comprising:
- receiving an indication of an event including information associated with the event;
- determining, from the information associated with the event, a set of key values relevant to the event;
- for each key value in the set of key values:
- identify a key-value mapping associated with the key value from a plurality of key-value mappings;
- identifying a current aggregate value of the key value;
- calculating a new aggregate value for the key value based on the key-value mapping;
- updating the current aggregate value of the key value to reflect the new aggregate value;
- and
- recording the new aggregate value and an update time in a key log.
An event processing engine comprising:
- a processor;
- and
- a memory including instructions that, when executed with the processor, cause the event processing engine to, at least:
- receive an event notification that includes information associated with an event;
- determine, based on the information associated with the event, a set of key-value mappings associated with the event;
- update a set of key values associated with the set of key-value mappings in accordance with the set of key-value mappings;
- and
- update each of a set of key logs associated with the set of key values to include a record of the of the update to the set of key values.
A processing node apparatus comprising:
- a processor;
- and
- a memory including instructions that, when executed with the processor, cause the processing node to, at least:
- receive a notification generated upon the occurrence of an event;
- identify, within the notification, a plurality of factors relevant to one or more key values;
- identify, for each key value in the one or more key values, a key-value mapping that includes instructions for updating an aggregate value stored in relation to the key value;
- update each key value of the one or more key values based at least in part on the key-value mapping;
- and
- for each key value of the one or more key values, update a key-value log to include information on the update to the key value.
Dependencies are inferred from the claim text.