Method and system for composing stream processing applications according to a semantic description of a processing goal
First Claim
1. A method for assembling a stream processing application, comprising:
- inputting a plurality of data source descriptions, wherein each of the data source descriptions includes a graph pattern that semantically describes an output of a data source;
inputting a plurality of component descriptions, wherein each of the component descriptions includes a graph pattern that semantically describes an input of a component and a graph pattern that semantically describes an output of the component;
inputting a stream processing request, wherein the stream processing request includes a goal that is represented by a graph pattern that semantically describes a desired stream processing outcome;
assembling, using a processor of a computer, a stream processing graph in response to the stream processing request, wherein the stream processing graph is assembled by using machine code executable by the computer to process the plurality of data source descriptions and the plurality of component descriptions to obtain at least one of the data sources or at least one of the components that satisfies the desired processing outcome; and
outputting the stream processing graph.
2 Assignments
0 Petitions
Accused Products
Abstract
A method for assembling a stream processing application in which data source descriptions, component descriptions and a stream processing request are input and used to assemble a stream processing graph. Each of the data source descriptions includes a graph pattern that semantically describes an output of a data source, each of the component descriptions includes a graph pattern that semantically describes an input of a component and a graph pattern that semantically describes an output of the component, the stream processing request includes a goal that is represented by a graph pattern that semantically describes a desired stream processing outcome and the stream processing graph includes at least one data source or at least one component that satisfies the desired processing outcome.
142 Citations
31 Claims
-
1. A method for assembling a stream processing application, comprising:
-
inputting a plurality of data source descriptions, wherein each of the data source descriptions includes a graph pattern that semantically describes an output of a data source; inputting a plurality of component descriptions, wherein each of the component descriptions includes a graph pattern that semantically describes an input of a component and a graph pattern that semantically describes an output of the component; inputting a stream processing request, wherein the stream processing request includes a goal that is represented by a graph pattern that semantically describes a desired stream processing outcome; assembling, using a processor of a computer, a stream processing graph in response to the stream processing request, wherein the stream processing graph is assembled by using machine code executable by the computer to process the plurality of data source descriptions and the plurality of component descriptions to obtain at least one of the data sources or at least one of the components that satisfies the desired processing outcome; and outputting the stream processing graph. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A system for assembling a stream processing application, comprising:
-
a memory device for storing a program; a processor in communication with the memory device, the processor operative with the program to; receive and compile a plurality of data source descriptions, wherein each of the data source descriptions includes a graph pattern that semantically describes an output of a data source; receive and compile a plurality of component descriptions, wherein each of the component descriptions includes a graph pattern that semantically describes an input of a component and a graph pattern that semantically describes an output of the component; receive and compile a stream processing request, wherein the stream processing request includes a goal that is represented by a graph pattern that semantically describes a desired stream processing outcome; assemble a stream processing graph in response to the stream processing request, wherein the stream processing graph is assembled by using the plurality of data source descriptions and the plurality of component descriptions and includes at least one of the data sources or at least one of the components that satisfies the desired processing outcome; and output the stream processing graph. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30)
-
-
31. A computer program product comprising a computer useable medium having computer program logic recorded thereon for assembling a stream processing application, the computer program logic comprising:
-
program code for receiving and compiling a plurality of data source descriptions, wherein each of the data source descriptions includes a graph pattern that semantically describes an output of a data source; program code for receiving and compiling a plurality of component descriptions, wherein each of the component descriptions includes a graph pattern that semantically describes an input of a component and a graph pattern that semantically describes an output of the component; program code for receiving and compiling a stream processing request, wherein the stream processing request includes a goal that is represented by a graph pattern that semantically describes a desired stream processing outcome; and program code for assembling a stream processing graph in response to the stream processing request, wherein the stream processing graph is assembled by using the plurality of data source descriptions and the plurality of component descriptions and includes at least one of the data sources or at least one of the components that satisfies the desired processing outcome.
-
Specification