METHOD FOR PERFORMING REAL-TIME ANALYTICS USING A BUSINESS RULES ENGINE ON REAL-TIME HETEROGENOUS MATERIALIZED DATA VIEWS
4 Assignments
0 Petitions
Accused Products
Abstract
A method for performing real-time analytics using a business rules engine on real time heterogeneous materialized data views is disclosed. The method comprises processing of rows produced by views corresponding to events. The rows are processed according to business rules by a view engine. Views with conditions equivalent to rule conditions are subscribed to by a rule engine, which outputs action messages corresponding to the rule condition. Where the rule condition is satisfied, a statement to that effect is sent, with any available reportlets, to an alert engine. The alert engine handles alert states corresponding to the action statement, saves any corresponding reportlets, and generates a message to fire an alert to a notification engine. The notification engine formats the alert and sends the alert by a selected medium, such as email, a webservice call, or another network protocol.
53 Citations
55 Claims
-
1-29. -29. (canceled)
-
30. A method comprising:
-
detecting an event within a real-time stream of data received from an external system; responsive to detecting the event, materializing a real-time view of the event; using a plurality of user-defined specifications, wherein each individual specification sets forth a change to be detected in the materialized real-time view of the event and a corresponding action to be taken in response to the change; and responsive to detecting the change set forth by at least one of the plurality of user-defined specifications, triggering the corresponding action of the at least one user-defined specification, wherein triggering the corresponding action comprises selectively forestalling the triggering of the corresponding action until a particular event occurs, the particular event being specified in the at least one user-defined specification, and cancelling the triggering of the corresponding action if the particular event does not occur during a specified time duration. - View Dependent Claims (31, 32, 33, 34, 35, 36, 37, 38)
-
-
39. A method comprising:
-
detecting an event within a real-time stream of data received from an external system; responsive to detecting the event, materializing a real-time view of the event; using a plurality of user-defined specifications, wherein each individual specification sets forth a change to be detected in the materialized real-time view of the event and a corresponding action to be taken in response to the change; and responsive to detecting the change set forth by at least one of the plurality of user-defined specifications, triggering the corresponding action of the at least one user-defined specification, wherein triggering the corresponding action comprises tracking at least one of a raised and a lowered state for each unique tuple of a plurality of tuples.
-
-
40. A computer-implemented system for performing real-time analytics on heterogeneous data views, comprising:
-
a processor; an agent recorded on a medium readable by the processor, the agent executed by the processor to detect an event within a real-time stream of data that is received from an external system; a view engine recorded on a medium readable by the processor, the view engine executed by the processor to receive the event from the agent, to materialize one or more real-time views of the event, wherein the views comprise one or more business views and one or more hidden views, and wherein the business views are used to define one or more business rules; a rule engine recorded on a medium readable by the processor, the rule engine executed by the processor to receive the materialized real-time views from the view engine, to subscribe to the hidden views, wherein each of the hidden views has a condition equivalent to that of one of the business rules, and to generate a message to take an action corresponding to the condition specified by at least one of the business rules, wherein the rule engine is further configured to selectively forestall the generating of the message until a particular event occurs, and to cancel the generating of the message if the particular event does not occur during a specified time duration; an alert engine recorded on a medium readable by the processor, the alert engine executed by the processor to receive the message to take an action from the view engine, to handle an alert state corresponding to the message, and to generate a request to fire an alert; and a notification engine recorded on a medium readable by the processor, the notification engine executed by the processor to receive the request from the alert engine, to format the alert as a notice, and to send the notice to a user. - View Dependent Claims (41, 42, 43, 44, 45, 46, 47, 48, 49)
-
-
50. A system for performing real-time analytics on heterogeneous data views, comprising:
-
a processor; an agent recorded on a medium readable by the processor, the agent executed by the processor to detect an event within a real-time stream of data that is received from an external system; a view engine recorded on a medium readable by the processor, the view engine executed by the processor to receive the event from the agent, to materialize one or more real-time views of the event, wherein the views comprise one or more business views and one or more hidden views, and wherein the business views are used to define one or more business rules; a rule engine recorded on a medium readable by the processor, the rule engine executed by the processor to receive the materialized real-time views from the view engine, to subscribe to the hidden views, wherein each of the hidden views has a condition equivalent to that of one of the business rules, and to generate a message to take an action corresponding to the condition specified by at least one of the business rules, wherein the rule engine is further configured to determine that the message includes a clause to track at least one of a raised and a lowered state for each unique tuple of a plurality of tuples; an alert engine recorded on a medium readable by the processor, the alert engine executed by the processor to receive the message to take an action from the view engine, to handle an alert state corresponding to the message, and to generate a request to fire an alert; and a notification engine recorded on a medium readable by the processor, the notification engine executed by the processor to receive the request from the alert engine, to format the alert as a notice, and to send the notice to a user.
-
-
51. In a computer system for monitoring business activity, a computer-readable medium having a computer-readable program code embodied therein for causing the computer system to:
-
detect an event within a real-time stream of data that is received from an external system; responsive to detecting the event, materialize one or more real-time views of the event, wherein the views comprise one or more business views and one or more hidden views, and wherein the business views are used to define one or more business rules; subscribe to the hidden views, wherein each of the hidden views has a condition equivalent to that of one of the business rules; generate a message to take an action corresponding to the condition specified by at least one of the business rules based upon the received stream of rows; determine that the message includes a clause to selectively forestall the generating of the message until a particular event occurs, and to cancel the generating of the message when the particular event does not occur during a specified time duration; handle an alert state corresponding to the message; request that an alert be fired; format the alert as a notice; and send the notice to a user. - View Dependent Claims (52, 53, 54)
-
-
55. In a computer system for monitoring business activity, a computer-readable medium having a computer readable program code embodied therein for causing the computer system to:
-
detect an event within a real-time stream of data that is received from an external system; responsive to detecting the event, materialize one or more real-time views of the event, wherein the views comprise one or more business views and one or more hidden views, and wherein the business views are used to define one or more business rules; subscribe to the hidden views, wherein each of the hidden views has a condition equivalent to that of one of the business rules; generate a message to take an action corresponding to the condition specified by at least one of the business rules based upon the received stream of rows; determine that the message includes a clause to track at least one of a raised and a lowered state for each unique tuple of a plurality of tuples; handle an alert state corresponding to the message; request that an alert be fired; format the alert as a notice; and send the notice to a user.
-
Specification