IP Library Granted Patent US 8,122,006
Granted Patent B2
US 8,122,006 · App. 12/043,480 · Granted Feb 21, 2012

Event processing query language including retain clause

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,122,006
App. No.
12/043,480
Granted
Feb 21, 2012
Kind
B2
Abstract

An event processor can use event processing queries to operate an event. Event processing queries can include a “retain” clause that limits the amount of data over which the query is run.

Claims (52)

1. A computer implemented system for real time event processing, comprising:

a computer, including a processor and a computer readable storage medium;

an event processor which executes on the computer, and which is configured to

receive data as a plurality of event streams, and

interpret statements or queries written in an event processing language, against the event streams, to query or process the data therein,

wherein at least some of the statements or queries include, as part of the statement or query, a retain clause that defines an extent of data in a data stream which should be retained in memory and over which the statement or query should be interpreted, and

wherein at least one statement or query defines its extent as a sliding window of stream data, over which the statement or query is processed;

a plurality of event listeners, each of which can be associated with a statement or query to receive notifications when that statement or query is satisfied; and

wherein, while the data streams are being received at the event processor, the event processor interprets each statement or query provided thereto, to

retain in memory a set of data defined by the retain clause included as part of the statement or query,

query or process the retained data as further defined by the statement or query,

determine if the statement or query is satisfied, and

notify associated listeners as appropriate.

2. The computer implemented system of claim 1 , wherein the retain clause is interpreted by the event processor to limit the query to a certain time period of the events, as defined by the retain clause.

3. The computer implemented system of claim 1 , wherein the retain clause is interpreted by the event processor to limit the query to a certain number of events.

4. The computer implemented system of claim 1 , wherein the event processor further includes pattern matching functionality, including determining any matching clause in the statement or query, and querying or processing the statement or query according to the pattern defined therein.

5. The computer implemented system of claim 1 , wherein the event processor determines any output clause in the statement or query that can limit the output of the query, and processes the statement or query accordingly.

6. The computer implemented system of claim 5 , wherein the event processor processes the statement or query accordingly to the output clause by holding output of the statement or query until a specified amount of time has passed, or a specified number of events have been received.

7. A computer implemented method for real time event processing, comprising the steps of:

using an event processor to

receive data as a plurality of event streams, and

interpret statements or queries written in an event processing language, against the event streams, to query or process the data therein,

wherein at least some of the statements or queries include, as part of the statement or query, a retain clause that defines an extent of data in a data stream which should be retained in memory and over which the statement or query should be interpreted, and

wherein at least one statement or query defines its extent as a sliding window of stream data, over which the statement or query is processed;

providing a plurality of event listeners, each of which can be associated with a statement or query to receive notifications when that statement or query is satisfied; and

while the data streams are being received at the event processor, interpreting each statement or query provided thereto, to

retain in memory a set of data defined by the retain clause included as part of the statement or query,

query or process the retained data as further defined by the statement or query,

determine if the statement or query is satisfied, and

notify associated listeners as appropriate.

8. The computer implemented method of claim 7 , wherein the retain clause is interpreted by the event processor to limit the query to a certain time period of the events, as defined by the retain clause.

9. The computer implemented method of claim 7 , wherein the retain clause is interpreted by the event processor to limit the query to a certain number of events.

10. The computer implemented method of claim 7 , wherein the event processor further includes pattern matching functionality, including determining any matching clause in the statement or query, and querying or processing the statement or query according to the pattern defined therein.

11. The computer implemented method of claim 7 , wherein the event processor determines any output clause in the statement or query that can limit the output of the query, and processes the statement or query accordingly.

12. The computer implemented method of claim 11 , wherein the event processor processes the statement or query accordingly to the output clause by holding output of the statement or query until a specified amount of time has passed, or a specified number of events have been received.

13. A non-transitory computer readable storage medium including code to:

use an event processor to

receive data as a plurality of event streams, and

interpret statements or queries written in an event processing language, against the event streams, to query or process the data therein,

wherein at least some of the statements or queries include, as part of the statement or query, a retain clause that defines an extent of data in a data stream which should be retained in memory and over which the statement or query should be interpreted, and

wherein at least one statement or query defines its extent as a sliding window of stream data, over which the statement or query is processed;

provide a plurality of event listeners, each of which can be associated with a statement or query to receive notifications when that statement or query is satisfied; and

while the data streams are being received at the event processor, interpret each statement or query provided thereto, to

retain in memory a set of data defined by the retain clause included as part of the statement or query,

query or process the retained data as further defined by the statement or query,

determine if the statement or query is satisfied, and

notify associated listeners as appropriate.

14. The non-transitory computer readable storage medium of claim 13 , wherein the retain clause is interpreted by the event processor to limit the query to a certain time period of the events, as defined by the retain clause.

15. The non-transitory computer readable storage medium of claim 13 , wherein the retain clause is interpreted by the event processor to limit the query to a certain number of events.

16. The non-transitory computer readable storage medium of claim 13 , wherein the event processor further includes pattern matching functionality, including determining any matching clause in the statement or query, and querying or processing the statement or query according to the pattern defined therein.

17. The non-transitory computer readable storage medium of claim 13 , wherein the event processor determines any output clause in the statement or query that can limit the output of the query, and processes the statement or query accordingly.

18. The non-transitory computer readable storage medium of claim 17 , wherein the event processor processes the statement or query accordingly to the output clause by holding output of the statement or query until a specified amount of time has passed, or a specified number of events have been received.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 15, 2010
From: BEA SYSTEMS, INC.
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 025192/0244 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 14, 2008
From: DE CASTRO ALVES, ALEXANDRE; TAYLOR, JAMES
To: BEA SYSTEMS, INC.
Reel/Frame 020807/0551 →