@egorvodopyanov

Как спроектирована база данных приложения Юла?

Или ему подобное с функционалом: профиль, объявления, личные сообщения и самое главное поиск по категориям.
Хочу в образовательных целях попробовать реализовать похожий сервис, продумываю что использовать на бэкенде, сопутствующий вопрос: можно ли использовать для этого что-нибудь вроде firebase (читал что реализовывать поиск будет неудобно)
  • Вопрос задан
  • 101 просмотр
Решения вопроса 1
@luna3956
firebase подойдет для реализации личной переписки(мгновенных сообщений), в остальном же она не нужна. Используйте Postgresql или Mysql и будет вам счастье.

Спроектирована база довольно обычно, там ничего хитрого:

Таблица пользователей Users(id, name, ...)
Таблица объявлений Ads(id, title, text, category_id, user_id, ...)
Таблица сообщений Messages(id, text, from_user_id, to_user_id, ...)

и самое главное поиск по категориям


Гуглите "полнотекстовый поиск".

Ну и стоит учесть, что в случае крупных проектов там много кэширования. Данные разнесены на множество различных серверов. Каждый пользователь и его данные(объявления, переписка и тд) хранятся на одном сервере. Способы "разнесения" пользователей на разные сервера могут быть разные, но обычно вычисляют хеш от логина или например номера, берут остаток от деления на количество виртуальных серверов, и в зависимости от результата пользователь направляется на соответствующий сервер. Но это Вам вряд ли нужно, это только для проектов с большим количеством данных и высокими нагрузками, просто сказал для Вашего понимания как там устроено.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы