読むクエリ
Posgres では、フルテキスト インデックスにより、ドキュメントを前処理し、後で迅速に検索できるようにインデックスを保存できます。前処理には次のものが含まれます。
ドキュメントをトークンに解析します。
トークンを語彙素に変換します。
検索に最適化された前処理済みドキュメントを保存します。
tsvector
この型はPostgresで全文検索に使用されます
tsvector
text
type は以下の点で typeと異なります。
大文字と小文字を区別しません。大文字と小文字は同じです
ストップワード(and、or、not、she、him、その他数百語)を削除します。これらの単語はテキスト検索には関係ありません。
同義語を置き換え、語幹 (
elephant
->eleph
) を取ります。全文カタログには、単語 ではelephant
なく単語が含まれますelep
。GIST と GIN でインデックスできる (そしてすべき)
重み付けによるカスタムランキングと
ts_rank
Elastic Search (検索エンジン) は Postgres の全文検索に比べてどのような利点がありますか?
ベストアンサー1
全文検索とElasticsearchはどちらも同じ基本技術に基づいて構築されています逆インデックスしたがって、パフォーマンスはほぼ同じになります。
FTS の導入はより簡単になります。
ESにはLuceneが付属しており、
FTS 付きの Lucene が必要な場合は、追加の作業が必要になります。