Особенности проектирования полнотекстовых индексов (SQL Server 2008) - PullRequest
0 голосов
/ 18 января 2012

На моем веб-сайте требуется, чтобы пользователь мог выполнять поиск по нескольким различным таблицам и столбцам. Поэтому я работаю, чтобы реализовать это с помощью полнотекстового поиска.

Я хотел бы получить информацию от кого-то с большим опытом FTS по следующим вопросам.

  1. Хотя FTS позволяет искать несколько столбцов из одной таблицы в одном поиске, я не вижу возможности поиска по нескольким столбцам из нескольких таблиц в одном поиске. Это действительно так?

  2. Если мне нужно многократный поиск для поиска по нескольким таблицам, имеет ли смысл поместить индекс для каждой таблицы в отдельный полнотекстовый каталог? Мастера, кажется, рекомендуют новый каталог для больших таблиц, но я понятия не имею, что означает «большой» в этом случае.

  3. Наконец, есть ли желание упорядочить результаты так, чтобы совпадения в одном столбце таблицы предшествовали совпадениям в другом столбце?

1 Ответ

0 голосов
/ 19 января 2012

1. Пока FTS позволяет искать несколько столбцов из одной таблицы в одном поиске, я не вижу возможности поиска по нескольким столбцы из нескольких таблиц в одном поиске. Это на самом деле случай

FTIndex в одной таблице не может включать столбцы из другой таблицы. Как правило, вам просто нужно написать запрос так, чтобы он выполнял несколько запросов (вы упоминали об этом в # 2).

Другим вариантом будет создание индексированного представления ( см. Требования ), которое охватывает несколько таблиц, а затем построение FTIndex поверх представления. Я считаю, что это возможно, но вы должны проверить на достоверность.

2.Если мне требуется несколько поисков для поиска по нескольким таблицам, имеет ли смысл поместить индекс для каждой таблицы в отдельный полнотекстовый каталог? Мастера, кажется, рекомендуют новый каталог для большего таблицы, но я понятия не имею, что означает «большой» в данном случае.

не должно иметь никакого значения в SQL2008, поскольку каталог - это просто логическая группировка. Однако вы можете рассмотреть возможность размещения FTI-индексов в разных файловых группах, если у вас есть дисковая подсистема, которая имеет смысл (аналогичные соображения при разбиении таблиц по файловым группам на разных дисках ... для распространения ввода-вывода).

3. Наконец, есть ли желание упорядочить результаты так, чтобы совпадения в одном столбце таблицы предшествовали совпадениям в другом столбце? Я не верю, что это возможно ...

...