Filters and event schema for categorizing and processing streaming event data
First Claim
1. A non-transitory computer-readable medium embodying program code executable in at least one computing device that, when executed, directs the at least one computing device to:
- receive a specification of a pattern of events and an action to be performed in association with the pattern of events from an administrator device;
access an event received in a stream of events generated by a plurality of services, wherein the event describes at least one instance of user interaction with at least one client application executed on a client device, the event being received as a data structure in a first format;
identify a source of the event from the services based at least in part on a service identifier;
identify a regular expression filter from a plurality of potential regular expression filters stored in a data store, the regular expression filter being identified from the data store based at least in part on the source;
apply the regular expression filter to the data structure in the first format to identify an event type for the event;
identify a compute engine interested in the event, the compute engine identified based at least in part on the event type;
transform the data structure from the first format to a second format in accordance with a common event schema interpretable by the compute engine interested in the event; and
communicate the data structure in the second format to the compute engine, the compute engine being a virtual computing process configured to;
compare the event to the pattern of events; and
in response to all events in the pattern of events being matched, cause the action to be performed.
1 Assignment
0 Petitions
Accused Products
Abstract
Disclosed are various embodiments for filters and event schema for categorizing and processing streaming event data. An event may be generated by a service that describes user interaction a client application executable on a client device. The event may be received as a data structure in a first format. A filter, such as a regular expression filter, may be applied to the data structure to identify an event type for the event. The data structure may be converted from the first format to a second format in accordance with a common event schema able to be interpreted by virtual compute engines.
-
Citations
20 Claims
-
1. A non-transitory computer-readable medium embodying program code executable in at least one computing device that, when executed, directs the at least one computing device to:
-
receive a specification of a pattern of events and an action to be performed in association with the pattern of events from an administrator device; access an event received in a stream of events generated by a plurality of services, wherein the event describes at least one instance of user interaction with at least one client application executed on a client device, the event being received as a data structure in a first format; identify a source of the event from the services based at least in part on a service identifier; identify a regular expression filter from a plurality of potential regular expression filters stored in a data store, the regular expression filter being identified from the data store based at least in part on the source; apply the regular expression filter to the data structure in the first format to identify an event type for the event; identify a compute engine interested in the event, the compute engine identified based at least in part on the event type; transform the data structure from the first format to a second format in accordance with a common event schema interpretable by the compute engine interested in the event; and communicate the data structure in the second format to the compute engine, the compute engine being a virtual computing process configured to; compare the event to the pattern of events; and in response to all events in the pattern of events being matched, cause the action to be performed. - View Dependent Claims (2, 3, 4)
-
-
5. A system, comprising:
-
at least one computing device; and program instructions executable in the at least one computing device that, when executed by the at least one computing device, cause the at least one computing device to; receive a specification of a pattern of events and an action to be performed in association with the pattern of events from an administrator device; access an event received in a stream of events generated by a plurality of services, wherein the event describes at least one instance of user interaction with at least one client application executed on a client device; identify a regular expression filter from a plurality of potential regular expression filters stored in a data store, the regular expression filter being identified from the data store based at least in part on a source of the event; apply the regular expression filter to at least a portion of the event to classify the event; identify a compute engine interested in the event, the compute engine identified based at least in part on the event being classified using the regular expression filter; and communicate the event to the compute engine interested in the event as classified, wherein the compute engine comprises a virtual computing process configured to; compare the event to the pattern of events; and in response to all events in the pattern of events being matched, cause the action to be performed. - View Dependent Claims (6, 7, 8, 9, 10, 11, 12)
-
-
13. A method, comprising:
-
receiving, by at least one computing device comprising at least one hardware processor, a specification of a pattern of events and an action to be performed in association with the pattern of events from an administrator device; receiving, by the at least one computing device, an event in a data stream generated by a plurality of services, wherein the event describes at least one instance of user interaction with at least one client application executed on a client device, the event being received as a data structure in a first format; identifying, by the at least one computing device, a regular expression filter from a plurality of potential regular expression filters stored in a data store, the regular expression filter being identified from the data store based at least in part on a source of the event; applying, by the at least one computing device, the regular expression filter to the data structure in the first format to identify an event type for the event; accessing, by the at least one computing device, a common event schema associated with a plurality of virtual compute engines configured to process the event; transforming, by the at least one computing device, the data structure from the first format to a second format based at least in part on the common event schema; identifying, by the at least one computing device, at least one of the virtual compute engines interested in the event based at least in part on the event type of the event; and communicating, by the at least one computing device, the data structure in the second format to the at least one of the virtual compute engines, wherein the at least one of the virtual compute engines comprises a virtual computing process configured to; compare the event to the pattern of events; and in response to all events in the pattern of events being matched, cause the action to be performed. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20)
-
Specification