×

Distributed complex event processing

  • US 9,992,269 B1
  • Filed: 02/25/2014
  • Issued: 06/05/2018
  • Est. Priority Date: 02/25/2013
  • Status: Active Grant
First Claim
Patent Images

1. A method comprising:

  • constructing at least one complex event query specification comprising one or more grouping criteria by which event data is grouped into distributed event streams, one or more filtering criteria by which individual events relevant to a given complex event are specified and one or more query statements specifying event stream processing to be performed by complex event processing engines;

    establishing a time interval defining an event stream continuation interval for mapping the distributed event streams to complex event processing engines;

    analyzing said at least one complex event query specification to determine a given number of different complex event processing engines and corresponding distributed event streams based on the grouping criteria in said at least one complex event query specification;

    instantiating the given number of complex event processing engines;

    activating said at least one complex event query specification in the complex event processing engines; and

    responsive to determining that a new event stream continuation interval has arrived based on the established time interval;

    identifying new event data stored in a distributed file system relevant to said at least one complex event query specification, wherein relevance is determined based on the one or more filtering criteria in said at least one complex event query specification; and

    mapping the new event data to respective ones of the complex event processing engines via the distributed event streams, wherein the complex event processing engines evaluates the one or more query statements of said at least one complex event query specification for the event data in the distributed event streams;

    wherein the method is performed by at least one processing device comprising a processor coupled to a memory, the at least one processing device comprising one or more master processing nodes and one or more slave processing nodes, the complex event processing engines being instantiated on respective ones of the slave processing nodes, the slave processing nodes executing under control of the master processing nodes;

    wherein the master processing nodes are configured to implement an application interface for constructing the at least one complex event processing query, to coordinate use of compute and storage resources by the complex event processing engines, to track one or more complex event processing jobs performed by the complex event processing engines, and to control and record transactions of the complex event processing jobs in a distributed file system;

    wherein a given one of the slave processing nodes is configured to monitor one or more of the complex event processing jobs, to report job progress for the one or more complex event processing jobs to the master processing nodes, to perform file system transactions for one or more of the complex event processing jobs in the distributed file system, and to provide event data from the distributed file system to a given one of the complex event processing engines;

    wherein said at least one complex event query specification comprises two or more complex event query specifications;

    wherein a first one of the complex event processing engines and at least a second one of the complex event processing engines are activated with a same one of the two or more complex event query specifications; and

    wherein a third one of the complex event processing engines and at least a fourth one of the complex event processing engines are activated with different ones of the two or more complex event query specifications.

View all claims
  • 9 Assignments
Timeline View
Assignment View
    ×
    ×