Ребятушки, помогите понять.

Вот пример использования кафки для создания социальной сети ( где можно лайкать, постить, комментировать ).
Но до меня никак не доходит, какой смысл отправлять информацию в кафку? Все равно ее надо сохранять в БД, она же в кафке просто пропадет.
Почему нельзя это сразу сохранить в БД? Или кафка выступает в роли кэша для временного хранения данных, пока она там не накопится в достаточных размеров чтобы одним батчем отправить в БД, а не дергать БД каждый раз?
Тоже самое что и rabbitmq/AMQP формируется очередь запросов с которой работают обычно стайтлесс клиенты которые еще могут скейлится а вот уже сами клиенты обычно пишут в базу где обычно кластеризация.
Очередь сообщений - это буфер. Если ты пишешь сразу в базу данных, в момент наплыва посетителей сайт ляжет, т.к. база не справится с нагрузкой. С очередью - если сообщений / лайков / комментариев слишком много и получатели не успевают их обрабатывать - они будут накапливаться в очереди и будут обрабатываться по мере готовности получателей. А когда кол-во посетителей снизится, очередь опустеет - т.к. вся информация, скопившаяся в очереди, будет обработана.
Очередь сообщений - это возможность уменьшить связность системы: код, отправляющий сообщения в очередь, ничего не знает о коде, обрабатывающем сообщения. И наоборот.
Очередь сообщений - это возможность гибко балансировать и перераспределять нагрузку, т.к. можно управлять количеством отправителей и получателей.
P.S. Разумеется, можно арендовать серверы БД с диким запасом мощности - чтобы любую расчётную нагрузку могли обработать. Но это будет стоить многократно дороже, чем очередь и более слабые серверы БД.
P.P.S. В твоём примере Kafka используется и как буфер, сглаживающий нагрузку, и как менеджер, распределяющий сообщения по 5 типам очередей к которым подключено 4 типа отправителей и 4 типа получателей.
кэш?...
вы вообще пытались читать что такое кафка?