Hybrid push/pull execution of continuous SQL queries
First Claim
Patent Images
1. A computer-implemented method for hybrid push/pull of continuous structured query language queries, the computer-implemented method comprising:
- receiving stream input, wherein the stream input comprises events of interest;
building stream plans based on an original query from the stream input and a state machine, wherein building stream plans comprises splitting the original query into a push sub-query and a pull sub-query, and wherein the pull sub-query represents a portion of the original query from the stream input and the push sub-query represents a remaining portion of the original query from the stream input;
replicating the stream input, wherein replicating the stream input comprises copying the stream input to produce a set of input streams, wherein one of the set of input streams is directed to a database and one of the set of input streams is directed to the state machine;
responsive to a push sub-query trigger, determining whether a pattern of the push sub-query matches an event in the one of the set of input streams directed to the state machine to form a pattern match and creating the push sub-query trigger in response to the pattern match, wherein the pattern match causes submitting of the pull sub-query to execute against accumulated data in the database to produce a result; and
sending the result to a requestor.
1 Assignment
0 Petitions
Accused Products
Abstract
Illustrative embodiments provide a computer-implemented method for hybrid push/pull of continuous structured query language queries. The computer-implemented method receives stream input, wherein the stream input comprises events of interest, builds and a state machine and stream plans, based on an original query, and replicates the stream input. Responsive to a push sub-query trigger, the computer-implemented method submits a pull sub-query to the database to produce a result, and sends the result to a requester.
-
Citations
14 Claims
-
1. A computer-implemented method for hybrid push/pull of continuous structured query language queries, the computer-implemented method comprising:
-
receiving stream input, wherein the stream input comprises events of interest; building stream plans based on an original query from the stream input and a state machine, wherein building stream plans comprises splitting the original query into a push sub-query and a pull sub-query, and wherein the pull sub-query represents a portion of the original query from the stream input and the push sub-query represents a remaining portion of the original query from the stream input; replicating the stream input, wherein replicating the stream input comprises copying the stream input to produce a set of input streams, wherein one of the set of input streams is directed to a database and one of the set of input streams is directed to the state machine; responsive to a push sub-query trigger, determining whether a pattern of the push sub-query matches an event in the one of the set of input streams directed to the state machine to form a pattern match and creating the push sub-query trigger in response to the pattern match, wherein the pattern match causes submitting of the pull sub-query to execute against accumulated data in the database to produce a result; and sending the result to a requestor. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A data processing system for hybrid push/pull of continuous structured query language queries, the data processing system comprising:
-
a bus; a memory connected to the bus, wherein the memory comprises computer executable instructions; a communication unit connected to the bus;
a database connected to the bus;a processor unit connected to the bus, wherein the processor unit executes the computer executable instructions to direct the data processing system to; receive stream input, wherein the stream input comprises events of interest; build stream plans based on an original query from the stream input and a state machine, wherein building stream plans comprises splitting the original query into a push sub-query and a pull sub-query, and wherein the pull sub-query represents a portion of the original query from the stream input and the push sub-query represents a remaining portion of the original query from the stream input; replicate the stream input, wherein replicating the stream input comprises copying the stream input to produce a set of input streams, wherein one of the set of input streams is directed to a database and one of the set of input streams is directed to the state machine; responsive to a push sub-query trigger, determine whether a pattern of the push sub-query matches an event in the one of the set of input streams directed to the state machine to form a pattern match and create the push sub-query trigger in response to the pattern match, wherein the pattern match causes submit of the pull sub-query to execute against accumulated data in the database to produce a result; and send the result to a requestor. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A computer-program product for hybrid push/pull of continuous structured query language queries, the computer program product comprising:
-
a computer usable storage device, comprising a memory, having computer executable instructions stored thereon, the computer executable instructions comprising; computer executable instructions for receiving stream input, wherein the stream input comprises events of interest; computer executable instructions for building stream plans based on an original query from the stream input and a state machine, wherein building stream plans comprises splitting the original query into a push sub-query and a pull sub-query, and wherein the pull sub- query represents a portion of the original query from the stream input and the push sub-query represents a remaining portion of the original query from the stream input; computer executable instructions for replicating the stream input, wherein replicating the stream input comprises copying the stream input to produce a set of input streams, wherein one of the set of input streams is directed to a database and one of the set of input streams is directed to the state machine; computer executable instructions, responsive to a push sub-query trigger, for determining whether a pattern of the push sub-query matches an event in the one of the set of input streams directed to the state machine to form a pattern match and creating the push sub-query trigger in response to the pattern match, wherein the pattern match causes submitting of the pull sub-query to execute against accumulated data in the database to produce a result; and computer executable instructions for sending the result to a requestor. - View Dependent Claims (12, 13, 14)
-
Specification