Рейтинг:0

Каковы мои варианты распределенной базы данных, ориентированной на строки?

флаг cn

(Извините, если это не тот форум. StackOverflow тоже не кажется правильным. Я думал, что раньше на главной странице было описание, в котором говорилось, какие вопросы актуальны, но сегодня я не могу его найти.)

У меня есть несколько серверов, которые будут обрабатывать данные для набора клиентов. Я не знаю заранее, какие клиенты будут подключаться к каким серверам, и клиенты могут перемещаться между серверами. Мне нужен способ для серверов обмениваться последней информацией о клиенте.

Скажем, у меня есть клиенты C1, C2, C3 и C4 и серверы S1 и S2. Серверы запускаются и знают, что клиенты C1..C4, но ничего о них не знают. C1 и C2 подключаются к S1, а S1 поддерживает некоторое состояние о них. Периодически S1 делится текущим состоянием C1 и C2 с S2. В какой-то момент C1 отключается от S1 и подключается к S2. S2 имеет немного устаревшее состояние для C1 и в основном может возобновить обработку C1 без каких-либо перерывов.

Тем временем C3 и C4 подключаются к S2, и происходит почти то же самое. S2 поддерживает состояние C3 и C4 и периодически сообщает о них S1. Если C3 перемещается в S1, он уже немного устарел.

Я думал о MQTT и о том, чтобы каждый сервер публиковал то, что ему известно, и подписывался на то, что он хотел бы знать, но объем данных, который я ожидаю, не очень хорошо подходит для варианта использования MQTT. (Может быть 256 тысяч клиентов или больше. FWIW, данные для клиента составляют ~ 64 байта.)

На ум пришел Redis, но это кажется не совсем правильным, потому что репликация, кажется, копирует весь экземпляр с мастера на реплику, и здесь у меня есть части данных, принадлежащих (или последних обновленных) каждому серверу.

Если Redis не подходит, какие у меня есть варианты?

ТИА.

флаг us
К вашему сведению: это, вероятно, хороший вопрос для superuser.com.
Chris Nelson avatar
флаг cn
https://superuser.com/questions/1717378/какие-есть-мои-параметры-для-распределенной-ориентированной-строки-базы данных

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.