Opcje wyszukiwania i indeksowania tekstu obejmują:
-
indeksowanie pełnotekstowe z wyszukiwaniem opartym na słowniku, w tym obsługa wyszukiwania prefiksów, np.
to_tsvector(mycol) @@ to_tsquery('search:*')
-
text_pattern_ops
indeksy do obsługi dopasowań ciągu prefiksów, np.LIKE 'abc%'
ale nie wyszukiwania infix, takie jak%blah%
;.reverse()
Indeks d może być użyty do wyszukiwania sufiksów. -
pg_tgrm
indeksy trygramów w nowszych wersjach jak pokazano w tym ostatnim dba post .stackexchange.com . -
Zewnętrzne narzędzie do wyszukiwania i indeksowania, takie jak Apache Solr .
Z minimalnych informacji podanych powyżej powiedziałbym, że tylko indeks trygramowy będzie w stanie ci pomóc, ponieważ wyszukujesz w ciągu znaków infiksowych, a nie szukasz słów ze słownika. Niestety, indeksy trygramów są ogromne i raczej nieefektywne; nie oczekuj jakiegoś magicznego zwiększenia wydajności i pamiętaj, że zbudowanie i uaktualnianie silnika bazy danych wymaga dużo pracy.