Method and system for scheduling a partial ordered transactions for event correlation
First Claim
Patent Images
1. A computer implemented method for scheduling event transactions, each event transaction having a respective time stamp for use in an event-driven application having predetermined event rules, said method comprising:
- resolving possible time dependencies among events according to said predetermined event rules; and
determining when the event transactions are processed thus allowing the event transactions to be dispatched to distributed processors for concurrent processing, wherein said determining when the event transactions are processed comprises;
registering each incoming event to maintain a list of registered events;
for each registered event resolving possible time dependencies among registered events with marked situations that are not detected yet according to said predetermined event rules;
dispatching an event transaction for which all said possible time dependencies are resolved to an event processing unit;
receiving a processing result of the event transaction;
determining whether said event transaction is to be committed or aborted;
if the event transaction is to be aborted, aborting the event transaction and dispatching the event transaction again to a processing unit; and
wherein said registering each incoming event includes;
receiving an event;
assigning a timestamp to the event;
determining using predetermined event rules and the marked situations that can be triggered by the received event;
adding the received event and the marked situations that can be triggered thereby to appropriate columns in an event concurrency table;
determining in accordance with said predetermined event rules whether a transaction spawned by the received event can be started for the received event;
if the transaction cannot be started for the received event, waiting until the transaction can be started;
if the transaction can be started;
dispatching the event to the event processing unit;
receiving transaction processing results from the event processing unit;
determining in accordance with the predetermined event rules, whether the transaction can be committed for the received event;
if the transaction cannot be committed for the received event, discarding the processing results and restarting the transaction; and
if the transaction can be committed for the received event, updating the event concurrency table and committing the transaction.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and system for scheduling event transactions each having a respective time stamp, for use in an event-driven application. Possible time dependencies among events are resolved according to predetermined event rules associated with the events so as to allow determination as to when the event transactions may be processed. This allows the event transactions to be dispatched to distributed processors for concurrent processing.
-
Citations
1 Claim
-
1. A computer implemented method for scheduling event transactions, each event transaction having a respective time stamp for use in an event-driven application having predetermined event rules, said method comprising:
-
resolving possible time dependencies among events according to said predetermined event rules; and determining when the event transactions are processed thus allowing the event transactions to be dispatched to distributed processors for concurrent processing, wherein said determining when the event transactions are processed comprises; registering each incoming event to maintain a list of registered events; for each registered event resolving possible time dependencies among registered events with marked situations that are not detected yet according to said predetermined event rules; dispatching an event transaction for which all said possible time dependencies are resolved to an event processing unit; receiving a processing result of the event transaction;
determining whether said event transaction is to be committed or aborted;if the event transaction is to be aborted, aborting the event transaction and dispatching the event transaction again to a processing unit; and wherein said registering each incoming event includes; receiving an event;
assigning a timestamp to the event;determining using predetermined event rules and the marked situations that can be triggered by the received event; adding the received event and the marked situations that can be triggered thereby to appropriate columns in an event concurrency table; determining in accordance with said predetermined event rules whether a transaction spawned by the received event can be started for the received event; if the transaction cannot be started for the received event, waiting until the transaction can be started; if the transaction can be started;
dispatching the event to the event processing unit;receiving transaction processing results from the event processing unit;
determining in accordance with the predetermined event rules, whether the transaction can be committed for the received event;if the transaction cannot be committed for the received event, discarding the processing results and restarting the transaction; and if the transaction can be committed for the received event, updating the event concurrency table and committing the transaction.
-
Specification