** 本エントリはDistributed computing Advent Calendar 2021の12/1エントリです。 はじめに Apache Kafkaはメッセージブローカーであると同時にストレージの役割も果たす、それまでのMQの世界観とは少し異なった機能性を有しています。またデータのグループとなるTopicの構成やKafkaを利用するクライアントの設定如何によって全く異なるワークロードを同一クラスタ上で処理する事が可能です。 Kafka創世記には、マイクロサービス間の非同期コミュニケーションやData Lakeへのデータ投入、そしてIoTやサーバー/アプリログのように大量のデータを捌く用途で広く活用されました。その後Kafka ConnectやKafka Streamsの出現により、データソース/シンクとの繋がりやストリーム処理、Exactly Once Semanticsのア