Incremental evaluation of complex event-condition-action rules in a database system
First Claim
1. A computer-implemented method for managing evaluation of a rule based on a composite event that is defined to consist of multiple primitive events, the method comprising:
- determining that a first part of a condition, of the rule, is satisfied by an instance of a first primitive event of the multiple primitive events, wherein the first part of the condition must be satisfied to trigger an action corresponding to the rule;
storing persistently in a database, first state information associated with the first part of the condition and associated with the rule, wherein the first state information represents that the first part of the condition is satisfied by the instance of the first primitive event;
wherein the first state information is stored in a first table; and
wherein the first state information includes a reference to a record, in a second table, of the instance of the first primitive event.
1 Assignment
0 Petitions
Accused Products
Abstract
In the scenario in which a rule set is defined for composite events, instances of the associated primitive events are added to a database-centric rules engine one at a time. Rules that rely on these events fire the corresponding actions when instances of all the corresponding primitive events are detected. Intermediate states of the rule evaluations are persistently stored in the database, thereby avoiding repeated evaluation of portions of rules and supporting efficient incremental evaluation of the rules. The rules defined within a rule set could vary significantly, using various rule condition language constructs such as “any” and negation constructs. The state information generated from evaluating the rules belonging to a single rule set is all stored in a single relational table and managed using direct SQL and DML commands.
-
Citations
32 Claims
-
1. A computer-implemented method for managing evaluation of a rule based on a composite event that is defined to consist of multiple primitive events, the method comprising:
-
determining that a first part of a condition, of the rule, is satisfied by an instance of a first primitive event of the multiple primitive events, wherein the first part of the condition must be satisfied to trigger an action corresponding to the rule;
storing persistently in a database, first state information associated with the first part of the condition and associated with the rule, wherein the first state information represents that the first part of the condition is satisfied by the instance of the first primitive event;
wherein the first state information is stored in a first table; and
wherein the first state information includes a reference to a record, in a second table, of the instance of the first primitive event. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32)
-
Specification