IBM Streams 4.3.0

Streams processing applications

A stream processing application is a collection of operators, all of which process streams of data.

One of the most basic stream processing applications is a collection of three operators: a source operator, one of the process operators, and a sink or output operator.
Figure 1. A basic stream processing application: a source operator, a process operator, and a sink or output operator.
From left to right, the operators are the FileSource operator, the Filter operator, and the FileSink operator.
Source operator
A source operator creates a stream from an external data source that then can be consumed by downstream operators. The example in Figure 1 shows the FileSource operator that reads data from a file.
Processing operator
In addition to source and sink operators, SPL is supported by many built-in operators in categories such as relational operators and XML operators. The example in Figure 1 shows the Filter operator, which passes to the next operator only that data that satisfies the condition that you specify in the parameter of the filter operator. Other standard processing operators include the Aggregate operator, the Throttle operator, and the Split operator.
Sink operator
A sink operator writes data from its input streams to external data systems. The example in Figure 1 shows a FileSink operator that receives the data in the stream and writes it to a file.
Applications are either stand-alone or distributed.
Stand-alone applications
Stand-alone applications run locally as executable files. Stand-alone applications do not require a domain or an instance to run. They are typically used for testing and debugging purposes.
Distributed applications
Distributed applications run on the runtime system. Unlike a stand-alone application, a distributed application can run across multiple hosts.