Kafka is an open-source scalable, fault tolerant, and distributed data streaming platform. You can process large amounts of data quickly by using Kafka. It can serve as an interim staging area for data that will be consumed by various types of downstream consumer applications.
Kafka runs as a cluster comprised of one or more servers each of which is called a broker. Kafka brokers stream data in the form of messages. These messages are published to a topic.
Kafka topics are divided into partitions. This gives better throughput and could be used to scale the number of messages processed. Message ordering is guaranteed only within partitions.