Broker client libraries enable you to send messages that can contain arbitrary data, by using binary content. Quix Streams takes a similar approach. The problem with these messages is there is no obvious way to group them, which is often a requirement in streaming applications.
Sending messages using a broker client library is illustrated in the following diagram:
Quix Streams creates a stream context for you to group all data for a source. This enables automatic horizontal scaling of your models when you deal with multiple data sources.
This context simplifies processing streams by providing callbacks on the subscriber. You can keep working with each context (stream) separately or together, depending on your needs.
The library also allows you to attach metadata to streams, such as IDs, location, references, time, or any other type of information related to the data source.
This metadata can be read by the library in real time. You can also review historical data in the Quix Portal, if you choose to persist the topic streams.