私は非常に大きなナレッジ ベース (Yago2) を持っており、列は XML タグの形式です'<Albert_Einstein>'
。私のユースケースではパフォーマンスが非常に重要なので、次のような gin インデックスを作成しました。
create index col_idx on yagofacts using gin(to_tsvector('english', column_name));
今、私はそれをクエリしようとしています
select * from yagofacts where to_tsvector('english', column_name) @@ to_tsquery('Albert_Einstein');
ただし、XML タグを検索できないため、結果は返されません。以前の質問に対して、私ができる解決策を 1 つ見ました。
select to_tsvector( 'simple', regexp_replace(column_name, E'[^A-Za-z0-9]', ' ', 'g')) @@ to_tsquery('simple','Albert_Einstein');
問題は、私が作成した gin インデックスを使用しないため、パフォーマンスが良くないことです。どうすれば高速にクエリできますか?