Event streams

Xapix processes streams of data (records or messages) using either Kafka event streams or Azure Event Hub in real-time. Kafka event streams consume data from sources such as IoT sensors that generate data on a regular basis or generate it randomly. For example, you can use Xapix to transform data from these sources and send to a webhook service for consumption by applications or to a different Kafka topic.

Xapix’s core is built on top of Kafka but adds other features like advanced API monitoring, data standardization and allows to seamlessly connect your data even for non-experts with a low code approach.

Publishing and Subscribing

Event streams use a concept of publishing and subscribing. It is a pattern of messaging where a sender, such as an application, publishes streams of messages (items of data) in categories called Topics. In Azure, a Topic is an Event Hub. but serves the same purpose.

A subscriber to this Topic receives the message (data item) immediately. The publishing of a message is an event and a stream of message publishing is an event stream.

Several technologies exist that provide event streams. Xapix currently supports Kafka Event Streams and Azure Event Hubs.

Apache Kafka vs. Azure Event Hubs

According to Microsoft, Kafka and Event Hubs are similar. The key difference is that Kafka is a software that can be run wherever a user chooses, while Microsoft Event Hubs is a Cloud service. Consequently, in Xapix, you set up a a Kafka Server while you set up a Event Hubs namespace within the Azure Event Hubs cloud.

The following table shows the naming difference.

Kafka Concept

Event Hubs Concept

Cluster

Namespace

Topic

Event Hub

Partition

Partition

Consumer Group

Consumer Group

Offset

Offset