почему мессенджер и диссонанс Facebook используют базы данных, а не системы очередей для своих сообщений? - PullRequest
0 голосов
/ 10 апреля 2020

Я читаю (довольно старый) дизайн данных Facebook Messenger и новый дизайн discord .

Оба используют базу данных с широкими столбцами - Hbase или Кассандра. Они говорят, что:

возникли два общих шаблона данных: 1. Короткий набор временных данных, который имеет тенденцию быть изменчивым 2. Постоянно растущий набор данных, к которым редко получают доступ

Я понимаю, почему исторические данные c эффективно хранятся в базе данных такого типа, но почему основная функция отправки недавних сообщений онлайн-пользователям не реализована в чем-то совершенно ином: система очередей типа кафки или кролика?

1 Ответ

0 голосов
/ 10 апреля 2020

оказывается, что они полагаются на систему очередей, называемую iris, и традиционная система хранения (cassandra / hbase) предназначена только для извлечения старых сообщений. см https://engineering.fb.com/production-engineering/building-mobile-first-infrastructure-for-messenger/

...