Nasza firma pracuje nad projektem, który wymaga bazy danych zawierającej 30-50 milionów wierszy danych produktu. Wiersze te zawierają tekst, który należy przeszukiwać równoczesnie tysiące razy na sekundę. Co więcej, każde przeszukiwanie musi zająć mniej niż jedną sekundę.Masywna baza danych z wyszukiwaniem pełnotekstowym - Sphinx, Lucene, Cassandra, MongoDB, CouchDB
W sumie mamy bazę danych 50M, która musi być przeszukiwana tysiące razy na sekundę. Pamiętaj, że są to wyszukiwania pełnotekstowe. Wiem, że MySQL lub jakakolwiek relacyjna baza danych sama nie może obsłużyć tego typu pracy. Szukamy więc kogoś, kto może zaprojektować dla nas odpowiednią konfigurację i pomóc nam ją wdrożyć za określoną cenę.
Po pierwsze, chcielibyśmy wiedzieć, jakie są nasze najlepsze opcje. Osobiście badałem rzeczy takie jak Sphinx, Lucene, Cassandra, MongoDB, CouchDB, Solr, itp., Ale tak naprawdę nie wiem, które powinny być używane w połączeniu z innym, aby dać nam najbardziej wydajną konfigurację.
Tak więc, jeśli ktoś mógłby po prostu dać radę lub skorzystać z naszej oferty pracy, byłoby to bardzo cenne.
Możesz skontaktować się ze mną przez PM tutaj, a dam ci mój e-mail/IM/numer telefonu do dalszej dyskusji.
Dzięki!
Hej, Dzięki za odpowiedzi! I tak, zapomniałem wspomnieć, że są to wyszukiwania pełnotekstowe. Powodem dla którego wykluczam MySQL jest blokowanie tabel. Funkcje fulltext wymagają myisam, który blokuje tabele, a tym samym boli tysiące równoczesnych wyszukiwań, których potrzebujemy w każdej sekundzie. Ponadto wyszukiwania pełnotekstowe są wolniejsze niż inne alternatywy. Mam nadzieję, że sparowanie MySQL z Sphinxem może zająć się tymi dwoma problemami, ale nie jestem pewien, dlatego właśnie wysłałem tutaj :) Jeszcze raz dziękuję! –