Processing events for continuous queries on archived relations
First Claim
Patent Images
1. A system, comprising:
- a memory storing a plurality of instructions; and
one or more processors configured to access the memory, wherein the one or more processors are further configured to execute the plurality of instructions to at least;
identify, by a query engine, that a continuous query is to be utilized for processing data of an archived relation that comprises a bounded data set of historical event data corresponding to a stream of business event data, the archived relation comprising a startup state;
identify, from a data definition language statement, annotations about the archived relation;
create the continuous query based at least in part on the annotations;
generate a data structure for a query operator graph that represents the continuous query, the data structure comprising nodes that represent each operator of the continuous query;
traverse, by the query engine, the data structure topologically from a source of the query operator graph;
identify, by the query engine, a particular stateful operator of the data structure that is a lowest stateful operator reached while traversing the data structure;
register a listening service with the stream of business event data prior to creating the archived relation;
receive, from a user, a window size for configuring the archived relation;
create, using the query engine, the archived relation to include the bounded data set of historical event data upon creation, the archived relation being non-empty at its creation, the creation of the archived relation comprising;
applying a window that corresponds to the window size on the stream of business event data; and
evaluating a snapshot query against the historical event data associated with the stream of business event data, the evaluation of the snapshot query comprising;
executing a structure query language (SQL) query to collect historical data;
receiving the historical data, via the SQL query, corresponding to the particular stateful operator of the data structure that was identified as the lowest stateful operator reached while traversing the data structure; and
initializing the continuous query with the historical data corresponding to the lowest stateful operator reached while traversing the data structure; and
evaluate the continuous query with respect to the archived relation after completion of the evaluation of the snapshot query against the historical data associated with the stream of business event data.
1 Assignment
0 Petitions
Accused Products
Abstract
Techniques for counting event changes with archived relations are provided. In some examples, a query that identifies at least a data object may be identified. Additionally, the query may be evaluated against historical data associated with the data object. Additionally, in some instances, a listening service may be registered with the data object. Further, the query may be evaluated based at least in part on the data object and the historical data.
-
Citations
18 Claims
-
1. A system, comprising:
-
a memory storing a plurality of instructions; and one or more processors configured to access the memory, wherein the one or more processors are further configured to execute the plurality of instructions to at least; identify, by a query engine, that a continuous query is to be utilized for processing data of an archived relation that comprises a bounded data set of historical event data corresponding to a stream of business event data, the archived relation comprising a startup state; identify, from a data definition language statement, annotations about the archived relation; create the continuous query based at least in part on the annotations; generate a data structure for a query operator graph that represents the continuous query, the data structure comprising nodes that represent each operator of the continuous query; traverse, by the query engine, the data structure topologically from a source of the query operator graph; identify, by the query engine, a particular stateful operator of the data structure that is a lowest stateful operator reached while traversing the data structure; register a listening service with the stream of business event data prior to creating the archived relation; receive, from a user, a window size for configuring the archived relation; create, using the query engine, the archived relation to include the bounded data set of historical event data upon creation, the archived relation being non-empty at its creation, the creation of the archived relation comprising; applying a window that corresponds to the window size on the stream of business event data; and evaluating a snapshot query against the historical event data associated with the stream of business event data, the evaluation of the snapshot query comprising; executing a structure query language (SQL) query to collect historical data; receiving the historical data, via the SQL query, corresponding to the particular stateful operator of the data structure that was identified as the lowest stateful operator reached while traversing the data structure; and initializing the continuous query with the historical data corresponding to the lowest stateful operator reached while traversing the data structure; and evaluate the continuous query with respect to the archived relation after completion of the evaluation of the snapshot query against the historical data associated with the stream of business event data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A non-transitory computer-readable memory storing a plurality of instructions executable by one or more processors, the plurality of instructions comprising:
-
instructions that cause the one or more processors to implement a query engine for identifying that a continuous query is to be utilized for processing data of an archived relation that comprises a bounded data set of historical event data corresponding to a stream of business event data, the archived relation comprising a startup state; instructions that cause the one or more processors to identify, from a data definition language statement, annotations about the archived relation; instructions that cause the one or more processors to create the continuous query based at least in part on the annotations; instructions that cause the one or more processors to generate a data structure for a query operator graph that represents the continuous query, the data structure comprising nodes that represent each operator of the continuous query; instructions that cause the one or more processors to traverse, by the query engine, the data structure topologically from a source of the query operator graph; instructions that cause the one or more processors to identify, by the query engine, a particular stateful operator of the data structure that is a lowest stateful operator reached while traversing the data structure; instructions that cause the one or more processors to register a listening service with the stream of business event data prior to creating the archived relation; instructions that cause the one or more processors to receive, from a user, a window size for configuring the archived relation; instructions that cause the one or more processors to create, using the query engine, the archived relation to include the bounded data set of historical event data upon creation, the archived relation being non-empty at its creation, the creation of the archived relation comprising; instructions that cause the one or more processors to apply a window that corresponds to the window size on the stream of business event data; and instructions that cause the one or more processors to evaluate a snapshot query against the historical event data associated with the stream of business event data after registration of the listening service with the stream of business event data to initialize the archived relation, the evaluation of the snapshot query comprising; executing a structure query language (SQL) query to collect historical data; receiving the historical data, via the SQL query, corresponding to the particular stateful operator of the data structure that was identified as the lowest stateful operator reached while traversing the data structure; and initializing the continuous query with the historical data corresponding to the lowest stateful operator reached while traversing the data structure; instructions that cause the one or more processors to process changes identified by the listening service after completion of the evaluation of the snapshot query against the historical data; and instructions that cause the one or more processors to evaluate the continuous query with respect to the archived relation. - View Dependent Claims (11, 12, 13, 14)
-
-
15. A computer-implemented method, comprising:
-
identifying, by a query engine, that a continuous query is to be utilized for processing data of an archived relation that comprises a bounded data set of historical event data corresponding to a stream of business event data, the archived relation comprising a startup; identifying, from a data definition language statement, annotations about the archived relation; creating the continuous query based at least in part on the annotations; generating a data structure for a query operator graph that represents the continuous query, the data structure comprising nodes that represent each operator of the continuous query; traversing, by the query engine, the data structure topologically from a source of the query operator graph; identifying, by the query engine, a particular stateful operator of the data structure that is a lowest stateful operator reached while traversing the data structure; registering a listening service with the stream of business event data prior to initializing the archived relation; receiving, from a user, a window size for configuring the archived relation; creating, using the query engine, the archived relation to include the bounded data set of historical event data upon creation, the archived relation being non-empty at its creation, the creation of the archived relation comprising; applying a window that corresponds to the window size on the stream of business event data; and evaluating a snapshot query against the historical data associated with the stream of business event data, the evaluation of the snapshot query comprising; executing a structure query language (SQL) query to collect historical data; receiving the historical data, via the SQL query, corresponding to the particular stateful operator of the data structure that was identified as the lowest stateful operator reached while traversing the data structure; and initializing the continuous query with the historical data corresponding to the lowest stateful operator reached while traversing the data structure; receiving a transaction identifier for at least a change identified by the listening service; comparing the received transaction identifier with a highest transaction identifier associated with the historical data; processing the change identified by the listening service, after completion of the evaluation of the continuous query against the historical data associated with the stream of business event data, when the received transaction identifier is greater than the highest transaction identifier associated with the historical data; and evaluating the continuous query with respect to the archived relation. - View Dependent Claims (17, 18)
-
-
16. The computer-implemented method of 15, wherein the snapshot query is evaluated against the historical data associated with the stream of business event data after registration of the listening service with the stream of business event data.
Specification