Systems and/or methods for forecasting future behavior of event streams in complex event processing (CEP) environments
First Claim
1. A method of forecasting how an event stream will behave in the future, the method comprising:
- receiving, by using at least one processor, an event stream including a plurality of events upon which a forecast is to be based; and
for each received event in the event stream;
updating, by using at least one processor, a reference window indicative of a predefined temporal range during which the forecast is to be computed so that the reference window ends with the respective received event so that the reference window moves with the event stream;
determining, by consulting a forecasting update policy, whether the forecast is to be triggered;
in response to determining the forecast is to be triggered, generating, by using at least one processor, a new forecasting window indicative of a temporal range in which events are to be forecasted;
for the new generated forecasting window and while a period of time associated with the forecasting window is not exceeded, (a) generating, via at least one processor, a plurality of forecasted events based on the updated reference window and (b) inserting the plurality of forecasted events into the new forecast window; and
publishing the new forecast window that includes the inserted plurality of forecasted events,wherein the reference window is updated multiple times for each update of the temporal range of the new forecasting window.
1 Assignment
0 Petitions
Accused Products
Abstract
Certain example embodiments described herein relate to forecasting the future behavior of event streams in Complex Event Processing (CEP) environments. For each received event in an event stream, a reference window indicative of a predefined temporal range during which the forecast is to be computed is updated so that the reference window ends with the received event, with the reference window moving with the event stream. Within this processing loop, when a forecasting update policy indicates that the forecast is to be updated based on the received event: a forecasting window indicative of a temporal range in which events are to be forecasted is updated; and while the time period of the forecasting window is not exceeded, (a) a next forecasted event is generated via at least one processor and (b) the next forecasted event is inserted into the forecast window; and the forecast window is published.
-
Citations
23 Claims
-
1. A method of forecasting how an event stream will behave in the future, the method comprising:
-
receiving, by using at least one processor, an event stream including a plurality of events upon which a forecast is to be based; and for each received event in the event stream; updating, by using at least one processor, a reference window indicative of a predefined temporal range during which the forecast is to be computed so that the reference window ends with the respective received event so that the reference window moves with the event stream; determining, by consulting a forecasting update policy, whether the forecast is to be triggered; in response to determining the forecast is to be triggered, generating, by using at least one processor, a new forecasting window indicative of a temporal range in which events are to be forecasted; for the new generated forecasting window and while a period of time associated with the forecasting window is not exceeded, (a) generating, via at least one processor, a plurality of forecasted events based on the updated reference window and (b) inserting the plurality of forecasted events into the new forecast window; and publishing the new forecast window that includes the inserted plurality of forecasted events, wherein the reference window is updated multiple times for each update of the temporal range of the new forecasting window. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A complex event processing (CEP) system, comprising:
-
at least one processor; a CEP engine under the control of at the least one processor; and at least one input adapter configured to receive an event stream including events and feed event data for the events from the event stream to the CEP engine; wherein the CEP engine comprises; at least one operator configured to directly or indirectly receive and process the event data for subsequent, direct or indirect, output to a system management application of the CEP system and/or an event consuming application or component in communication with the CEP system, at least one forecasting operator configured to directly or indirectly receive and process the at least one said event stream by; (a) for each received event in the event stream; updating a reference window indicative of a predefined temporal range during which the forecast is to be computed so that the reference window ends with the received event, the reference window moving with the event stream, and determining, by consulting a forecasting update policy, whether the forecast is to be triggered, in response to determining the forecast is to be generated, updating a forecasting window indicative of a temporal range in which events are to be forecasted; for the updated forecasting window and while a period of time associated with the forecasting window is not exceeded, (i) generating, via at least one processor, a plurality of forecasted events based on the updated reference window and (ii) inserting the plurality of forecasted events into the forecast window; and publishing the forecast window that includes the inserted plurality of forecasted events, and (b) directly or indirectly output the forecast to the system management application of the CEP system and/or an external application or component, wherein, for each update to the temporal range of the forecasting window, the reference window is updated multiple times. - View Dependent Claims (21, 22)
-
-
23. A non-transitory computer readable storage medium tangibly storing instructions that are executable by at least one processor of a complex event processing (CEP) system, the stored instructions comprising instruction that are configured to cause the complex event processing (CEP) system to:
-
accept an event stream including a plurality of events upon which a forecast is to be based; and for each received event in the event stream; update a reference window indicative of a predefined temporal range during which the forecast is to be computed so that the reference window ends with the received event, the reference window moving with the event stream; determine, by consulting a forecasting update policy that is stored on a memory device of the CEP system, whether the forecast is to be triggered; in response to determination that the forecast is to be generated, generate a forecasting window indicative of a temporal range in which events are to be forecasted; for the updated forecasting window and while the time period of the forecasting window is not exceeded, (a) generate a plurality of forecasted events based on the updated reference window and (b) insert the plurality of forecasted events into the forecast window; and publish the forecast window that includes the inserted plurality of forecasted events, wherein the forecasting update policy indicates that the forecasting window is updated only after multiple updates to the reference window have occurred.
-
Specification