Streams

Streams subscribe to incoming events and process the event data according to the rules you specify (which can be thought of as a "continuous query") to publish output events. Because they are stateless, they cannot retain data.

Streams can be designated as input, output, or local. Input streams are the point at which data enters the project from external sources via adapters. A project may have any number of input streams. Input streams do not have continuous queries attached to them, although you can define filters for them.

Because a stream does not have an underlying store, the only thing it can do with arriving input events is insert them. Insert, update, and upsert opcodes are all treated as inserts. Delete and safedelete are ignored. The only opcode that a stream can include in output event records is insert.

Local and output streams take their input from other streams or windows, rather than from adapters, and they apply a continuous query to produce their output. Local streams are identical to output streams, except that local streams are hidden from outside subscribers. Thus, a subscriber cannot subscribe to a local stream.