@VitaliyBorys

Как организовать поиск в соц сети?

На новой работе дали дорабатывать проект (соц сеть) после другого разработчика. Проект на бекенде laravel на фронтенде Vue.js.
Проект соц сеть, в которой есть группы, есть какие-то ивенты, есть друзья и т.д.
Сейчас стоит задача реализовать не простой поиск (это я имею ввиду для меня не простой).
Пользователя вводить в строку что-либо, и в результате ему должно выдаться :
1. Его друзья, по которым было найдено совпадение (ищется по имени)
2. Люди, с которыми он сегодня переписывался
3. Остальные пользователи по алфавиту.
4. Группы в которых он владелец
5. группы в который он состоит ....
И так далее вообщем.
Не знаю с чего даже начать. Наверное нужно будет использовать ElasticSearch. Тогда как там индексировать все эти данные.
Я конкретного ответа не жду. Хотелось бы услышать что-то в общем и в какую сторону копать. Да и вообще любая информация будет полезна. Спасибо.
  • Вопрос задан
  • 86 просмотров
Пригласить эксперта
Ответы на вопрос 2
dimonchik2013
@dimonchik2013
non progredi est regredi
гуглить в search suggestions

Сфинкс лучше Эластика по проде, Эластик проще
теоретически можно отделаться Постгресом
индексы по всему
проще всего - куча индексов в Сфинксе и параллельный поиск во все
Ответ написан
webinar
@webinar Куратор тега Веб-разработка
Учим yii: https://youtu.be/-WRMlGHLgRg
Проект соц сеть, в которой есть группы, есть какие-то ивенты, есть друзья и т.д.

Для меня такие проекты как лакмус на невменяемость заказчика

Не знаю с чего даже начать.

Убедиться, что готовы платить и не ожидают что задача будет готова завтра, иначе бежать.

Наверное нужно будет использовать ElasticSearch

Вероятно, но стоит подумать вначале о цифрах. Сколько реально пользователей будет. Обсудите с заказчиком. Если ожидается как у facebook - бегите или ставьте ценник как у тим лида facebook.

Я имею горький опыт, когда человек хочет facebook и планирует его сделать силами 1 разработчика за 6 месяцев. Но это не самая фантастика, самая фантастика в том, что потом он планирует как-то конкурировать потом. И все это в бюджете до $10k (5 на разработку и 5 видимо на рекламу в газетах своего города)
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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