У меня очень большая база знаний (Yago2) со столбцами в форме тегов XMl, например. '<Albert_Einstein>'
. Производительность очень важна в моем случае использования, поэтому я создал такой индекс джина:
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. Я видел одно решение предыдущего вопроса, где я мог бы сделать:
select to_tsvector( 'simple', regexp_replace(column_name, E'[^A-Za-z0-9]', ' ', 'g')) @@ to_tsquery('simple','Albert_Einstein');
Проблема в том, что он не имеет хорошей производительности, потому что не использует созданный мной индекс gin. Как я могу запросить его быстро?