Сервис рекомендующий друзей
Без разницы на чем реализовывать — с каждым шагом на будете упираться в производительность запросов.
Т.е. нужно решить две задачи:
а) выборка по схеме данных за допустимый период
б) получение данных за допустимый период
Грубо так:
103: любой хранилище с индексами по полям участвующим в запросе (практически любой sql-сервер)
104: поля участвующий в запросе кодируются в ключи (денормализация или NoSQL)
105: скорость выборки — шардинг хранилища + многопоточность выборки + проблемы с соединениями, здесь уже ломать голову нужно какая у вас архитектура, какие технологии используете
106: скорее всего вы уже сами будете отвечать на такие вопросы :)
Непонятно только, вы видео чат собираетесь делать? тогда странно что вы про канал не упомянули, самое слабое место.
Мобильный в смысле в виде приложений или веб морда тоже планируется?