Witam, chciałbym poradzić się Was odnośnie wyszukiwarki takiej jak ma Facebook (ta na górze strony). Wyszukiwanie miałoby być "różnych typów obiektów" np. użytkownicy, grupy, fanpejdże, wydarzenia - wyszukiwanie tylko po jednym polu - tytuł. Wszystkie te obiekty są w osobnych tabelach (moja główna baza to MySQL). Chciałbym to zrobić możliwie optymalnie, ale nie wiem, którą drogę wybrać.
Wydaje mi się, że można to zrobić takimi sposobami:
- Cron-em co jakiś czas przenosić te wszystkie dane (uzytkownicy, grupy, fanpejdze, wydarzenia) do Elastic Search do jednej "tabeli" i przy wyszukiwaniu używać właśnie tylko danych z ES?
- Odpalić jakiś serwer z kolejkowaniem (np. Redis), przyjmować tam na bieżąco nowe dane i cron-em lub node.js odbierać i pakować do Elastic Search?
- Czy może przy tworzeniu tych obiektów przez użytkownika na portalu, od razu zapisywać dane do dwóch baz danych: główna - MySQL i dodatkowa dla potrzeb wyszukiwania: Elastic Search albo Mongo?
Może są jakieś całkowicie inne metody do tego? Będę wdzięczny za wskazówki.