Các tùy chọn để tìm kiếm văn bản và lập chỉ mục bao gồm:
-
lập chỉ mục toàn văn với tính năng tìm kiếm dựa trên từ điển, bao gồm hỗ trợ tìm kiếm tiền tố, ví dụ:
to_tsvector(mycol) @@ to_tsquery('search:*')
-
text_pattern_ops
chỉ mục để hỗ trợ các trận đấu chuỗi tiền tố, ví dụ:LIKE 'abc%'
nhưng không các tìm kiếm infix như%blah%
; Mộtreverse()
Chỉ mục d có thể được sử dụng để tìm kiếm hậu tố. -
pg_tgrm
chỉ mục bát quái trên các phiên bản mới hơn như được trình bày trong dba gần đây này .stackexchange.com bài đăng . -
Công cụ lập chỉ mục và tìm kiếm bên ngoài như Apache Solr .
Từ thông tin tối thiểu được đưa ra ở trên, tôi muốn nói rằng chỉ một chỉ mục bát quái mới có thể giúp bạn, vì bạn đang thực hiện tìm kiếm tiền tố trên một chuỗi chứ không phải tìm kiếm các từ trong từ điển. Thật không may, chỉ mục bát quái là rất lớn và khá kém hiệu quả; đừng mong đợi một số loại tăng hiệu suất kỳ diệu và hãy nhớ rằng chúng mất rất nhiều công sức để công cụ cơ sở dữ liệu xây dựng và cập nhật.