Streaming context

Using a plain Broker SDK out of box only enables you to send messages independently, without any relationship between them.

Figure 1. Read and Write using plain Broker SDK

The Quix SDK handles stream context for you, so all the data from one data source is bundled in the same scope. This supports, among other things, automatic horizontal scaling of your models when you deal with a undertermined or big number of data sources.

Figure 2. Horizontal scalability using Quix SDK

The SDK simplifies the processing of streams by providing callbacks on the reading side. When processing stream data, you can identify data from different streams more easily than with the key-value approach and single messages used by other technologies.

The SDK also allows you to attach metadata to streams, like ids, references, or any other type of information related to the data source.

Figure 3. Attach metadata to streams using Quix SDK

This metadata can be read in real time by the SDK itself or via the Query API, if you choose to persist the streams into the database.