Integrating flexible rule execution into a near real-time streaming environment
First Claim
1. A complex event processing system, the system comprising:
- a rule repository that stores a plurality of rule sets in persistent memory, wherein the plurality of rule sets comprise temporal reasoning;
a platform that;
receives streamed raw data;
identifies, in near real-time and using the streamed raw data, contextual information from an external source that is associated with the streamed raw data;
generates new enriched streamed data in near real time by fusing the streamed raw data with the identified contextual information from the external source; and
communicates the new enriched streamed data to a rule execution operator in near real time; and
a rule execution operator that;
executes in near real-time one or more rules of the plurality of rule sets in the rule repository against the new enriched streamed data to detect an event; and
when an event is detected based on the contextual information and the temporal reasoning, communicates a notification of the event to the platform, wherein the rule execution operator is integrated within the platform.
1 Assignment
0 Petitions
Accused Products
Abstract
The present invention is directed to a system and methods for integrating flexible event detection into a near real-time streaming environment. A streaming platform streams raw data from multiple sources, adds contextual information to the raw data, and makes inferences from the enriched information. A rule execution operator, being integrated within the streaming platform, executes rules against the enriched information to detect events, using a rule repository that stores a plurality of flexible, dynamic, and customizable rules. When an event is detected by the rule execution operator, the streaming platform may use a middleware component to instantiate actions that are responsive to a detected event. Actions may be directly performed, and/or the actions and instructions for implementing or performing those actions are communicated to external devices.
14 Citations
20 Claims
-
1. A complex event processing system, the system comprising:
-
a rule repository that stores a plurality of rule sets in persistent memory, wherein the plurality of rule sets comprise temporal reasoning; a platform that; receives streamed raw data; identifies, in near real-time and using the streamed raw data, contextual information from an external source that is associated with the streamed raw data; generates new enriched streamed data in near real time by fusing the streamed raw data with the identified contextual information from the external source; and communicates the new enriched streamed data to a rule execution operator in near real time; and a rule execution operator that; executes in near real-time one or more rules of the plurality of rule sets in the rule repository against the new enriched streamed data to detect an event; and when an event is detected based on the contextual information and the temporal reasoning, communicates a notification of the event to the platform, wherein the rule execution operator is integrated within the platform. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. One or more non-transitory computer-readable media having stored therein instructions executable by a processor for complex event processing, the media comprising instructions for:
via a rule execution operator integrated within a streaming platform; receiving enriched streamed data from a streaming platform in near real time, wherein the enriched streamed data comprises contextual information from an external source added to raw streamed data in near real-time by the streaming platform when the streaming platform identifies that the contextual information is associated with the raw streamed data; assigning the enriched streamed data to a plurality of sessions; accessing at least one rule stored in a rule repository, wherein the rule repository stores a plurality of rules in persistent memory, and wherein the plurality of rules comprise temporal reasoning; executing the at least one rule against the enriched streamed data assigned to one or more of the plurality of sessions to detect an event based on the contextual information and the temporal reasoning; and when an event is detected in near real-time based on the execution of the at least one rule against the enriched streamed data, communicating a notification of the event to the streaming platform. - View Dependent Claims (15, 16, 17, 18, 19)
-
20. A method for complex event processing, the method comprising:
-
receiving enriched streamed data from a streaming platform, wherein the enriched streamed data comprises contextual information from an external source added to raw streamed data in near real-time by the streaming platform when the streaming platform identifies that the contextual information is associated with the raw streamed data; accessing at least one rule stored in a rule repository, wherein the rule repository stores a plurality of rules in persistent memory, and wherein the plurality of rules comprise temporal reasoning; executing the at least one rule against the enriched streamed data in order to detect an event based on the contextual information and the temporal reasoning; and when an event is detected in near real-time based on the execution of the at least one rule against the enriched streamed data, communicating a notification of the event to the streaming platform.
-
Specification