Когда обновляется полнотекстовый индекс на сервере sql? - PullRequest
5 голосов
/ 31 октября 2011

Я использую полнотекстовый поиск в одной из моих хранимых процедур.До этого (типичный пример - несколько минут) я вставляю элементы в таблицу с полнотекстовым индексом и примерно 3,5 миллионами строк в таблице.Дело в том, что элемент не существует (или поисковый запрос не может его найти), когда я пытаюсь найти его в упомянутой выше хранимой процедуре.Поэтому я предполагаю, что индекс все еще не обновляется в этот момент.

Вопрос в том ... Может ли это быть так, или моя проблема в другом месте?

Если да... Когда обновляется полнотекстовый индекс?Время обработки индекса зависит от количества данных, которые у него есть?Сколько времени обычно требуется примерно для 4 миллионов записей?

Я использую SQL Server 2008.

1 Ответ

2 голосов
/ 01 ноября 2011

До сих пор я обнаружил, что полнотекстовые индексы "сканируются" и что это действительно может быть тот случай, когда индекс еще не обработан в моей ситуации.Например, мы можем проверить это в sys.fulltext_indexes, например:

SELECT OBJECT_NAME(object_id), is_enabled, has_crawl_completed, crawl_type, crawl_start_date, crawl_end_date
FROM sys.fulltext_indexes;

* См. Параметр CHANGE_TRACKING для команды CREATE FULLTEXT INDEX.

...