Apache Kafka Is NOT Real-Time!

Is Apache Kafka really real-time? This is a question I get asked every week. Real-time is a great marketing term to describe how businesses can add value by processing data as fast as possible. Most software and product vendors use it these days, including messages frameworks (e.g., IBM MQ, RabbitMQ), event streaming platforms (e.g., Apache Kafka, Confluent), data warehouse/analytics vendors (e.g., Spark, Snowflake, Elasticsearch), and security / SIEM products (e.g., Splunk). This blog post explores what "real-time" really means and how Apache Kafka and other messaging frameworks accomplish the mission of providing real-time data processing.

Definition: What Is Real-Time?

The term "real-time" is not easily defined. However, it is essential to define it before you start any discussion about this topic.