MongoDB i przeszukiwanie 'live'

0

Cześć!
Piszę pewną aplikację. Zawsze do tej pory wyciągałem listy, lub pojedyncze dokumenty/krotki.
Teraz muszę jakoś obsłużyć inny rodzaj programu: muszę przeszukiwać bazę danych na bieżąco.
Czyli nie mam konkretnej encji, ale muszę znaleźć coś co najbliżej jej odpowiada.

Przykład:
Mam brązowe włosy, 24 lata, niebieskie oczy.

Algorytm (java) ma znaleźć taką samą osobę, a jeżeli jej nie ma w bazie, to ma znaleźć najbliższy dokument odpowiadający podanym danym.

Pytanie: Czy mam sam pisać taki algorytm i jak to zrobić? Mam pobrać wszystkie dokumenty osób 24-ro letnich i np. Streamem przeszukiwać dalej?
Myślę, że to droga donikąd, bo ramu zabraknie przy większej bazie.

Czy pomoże tutaj Solr albo ElasticSearch? Nie korzystałem z nich jeszcze i nie wiem czy one pomogą.

PS: Chodzi mi o to, że jak nie ma osoby co ma 24 lata, to Od razu znajdzie osobę najbardziej zbliżoną wiekiem czyli np. 26 lat.

0

24 lata, brązowe włosy, niebieskie oczy.
Jeśli nie ma takiej (osoby), to którą wybrać:
25 lat, brązowe włosy, niebieskie oczy
24 lata, brązowe włosy, zielone oczy
?

0

Pojęcie odległości obce jest bazie relacyjnej. Może w grafowej jest coś takiego?

1 użytkowników online, w tym zalogowanych: 0, gości: 1