Czy ktoś może polecić dobrą książkę (-y)/papier (y)/artykuł (y) na temat wyszukiwania pełnotekstowego (a może ogólnie w indeksie). Jestem dość analna, że muszę zrozumieć, co dzieje się za kulisami w moich aplikacjach, i mam problem ze zrozumieniem, dlaczego Sphinx i inne zewnętrzne FTS opuszczają MySQL/MyISAM w kurzu.Wyszukiwanie pełne tekstu?
Odpowiedz
Dla zrozumienia wyszukiwania pełnotekstowego od dołu do góry, polecam "Zarządzanie gigabajtami".
Zacznę od this. To jest dla SQL Server, ale czytanie nie zaszkodzi, ponieważ wiele pojęć innych niż szczegóły implementacji będzie (bardzo prawdopodobne) to samo w DB.
Znalazłem stronę z pełnym tekstem wyszukiwania Postgresu http://www.postgresql.org/docs/8.3/static/textsearch.html bardzo pouczającą.
Zwłaszcza: http://www.postgresql.org/docs/8.3/static/textsearch-intro.html
operatory wyszukiwania Textual istniały w bazach danych przez wiele lat. PostgreSQL ma ~ ~ * operatorzy podobne i iLike dla typów danych tekstowych, ale brakuje im wiele istotnych właściwości wymagane przez nowoczesne systemy informatyczne:
- nie ma wsparcia językowego, nawet dla języka angielskiego. Wyrażenia regularne to , które są niewystarczające, ponieważ nie są w stanie łatwo obsłużyć słów pochodnych, na przykład , które spełniają i spełniają. Możesz ominąć dokumenty , które zawierają satysfakcję, , chociaż prawdopodobnie będziesz chciał je znaleźć, gdy szukają usatysfakcjonowania. Możliwe jest użycie OR do wyszukiwania dla wielu form pochodnych, ale ta jest uciążliwa i podatna na błędy (niektóre słowa mogą mieć kilka tysięcy pochodnych).
- Nie zapewniają one zamówienia (rankingu) z wyników wyszukiwania, co sprawia, że są one nieskuteczne, gdy znaleziono tysiące pasujących dokumentów .
- Wydają się być powolne, ponieważ istnieje brak wsparcia indeksowego, więc muszą one przetworzyć wszystkie dokumenty dla każdego wyszukiwania .
Jest doskonały wolny książka wyszukiwania informacji (Christopher D. Manning, Prabhakar Raghavan i Hinrich Schütze, Wprowadzenie do wyszukiwania informacji, Cambridge University Press. 2008), włącznie z wyszukiwaniem tekstu, dostępny bezpłatnie (legit) here.
„An Object-Oriented Architecture for text odzysku”