Cześć,
Chcę zrobić system, który będzie dobierał użytkowników na podstawie podobnych zainteresowań lub umiejętności. Wpadłem na pewne rozwiązanie ale nie wydaje mi się zbyt wydajne.
- Użytkownik wysyła zapytanie do serwera
- Serwer pobiera z mongodb listę 100 użytkowników o podobnych zainteresowaniach
- Funkcja segreguje użytkowników od najbardziej dopasowanego do najmniej
- Użytkownik dostaje listę w której może polubić lub nie innego użytkownika
I teraz pojawiają się pewne problemy bo kiedy użytkownik polubi innego to w bazie danych powstaje match z tym użytkownikiem ale kiedy go nie polubi to czy powinna powstać blacklista? Zacznie to mocno komplikować zapytanie do bazy danych bo najpierw trzeba pobrać listę matchy następnie blackliste i przefiltrować bazę od użytkowników z którymi miało się wcześniej interakcję. Ma ktoś może inny pomysł albo może doradzić uproszczenie tego procesu?