2013-06-17 3 views
0

У нас есть сайт, показывающий видео для наших пользователей, работающих на нескольких веб-серверах в распределенной среде. Мы собираемся представить новую функцию, в которой мы показываем видео только нашим пользователям, которых они не видели раньше, когда они приходят в онлайн. Это может привести к сценарию, когда пользователь сначала обращается к серверу1 и видит видео1, а второй раз приходит на сервер2, и ему должно быть показано что угодно, кроме видео1. Для этого требуется поддерживать это состояние в бэкэнд и обновлять его в режиме реального времени. У нас достаточно трафика, чтобы исключить mysql для обновления этой информации в режиме реального времени. Проведя достаточно исследований, похоже, что cassandra/hbase будет хорошим вариантом для такого рода проблем с хорошей пропускной способностью записи. Есть ли какой-либо другой подход, который можно предпринять или каким-либо другим способом решить эту проблему?Как обновлять данные в распределенной среде

ответ

0

Почему бы не занести список недавно просмотренных видео в cookie в браузере пользователя?

Если вам действительно нужно сохранить его в бэкэнд-системе, HBase будет подходящим; одна строка для каждого пользователя, с классификатором столбцов для каждого видео, которое они видели. Вы можете сделать простой вариант проверки, чтобы увидеть, видели ли они какое-либо видео.

+0

спасибо. Любая причина для выбора hbase по кассандре в этом сценарии. У нас уже есть кластер cassandra, и мне было интересно, можем ли мы это использовать. – user1444800

+0

Вы найдете эту ссылку полезной. Он отлично сравнивает HBase и Cassandra: http://bigdatanoob.blogspot.in/2012/11/hbase-vs-cassandra.html – Tariq

Смежные вопросы