2011-10-31 12 views
5

Używam wyszukiwania pełnotekstowego w jednej z moich procedur przechowywanych. Wcześniej (typowym przykładem może być kilka minut) wstawiam elementy do tabeli, która ma indeks pełnotekstowy i około 3,5 miliona wierszy w tabeli. Rzecz polega na tym, że element nie istnieje (lub zapytanie nie może go znaleźć), gdy próbuję go znaleźć w górnej wyżej zapisanej procedurze. Zgaduję, że indeks wciąż nie jest aktualizowany w tym momencie.Kiedy wykonuje się aktualizację indeksu pełnotekstowego na serwerze sql?

Pytanie brzmi ... Czy to możliwe, czy mój problem jest gdzieś indziej?

Jeśli tak ... Kiedy następuje aktualizacja indeksu pełnotekstowego? Czy czas przetwarzania indeksu zależy od ilości danych, które ma? Jak długo będzie potrzebować około 4 milionów rekordów?

Używam SQL Server 2008.

Odpowiedz

2

tej pory dowiedziałem się, że pełne indeksy tekstowe są „czołgał” i że to może rzeczywiście być tak, że indeks nie został jeszcze przetworzony w mojej sytuacji. Możemy na przykład sprawdzić w sys.fulltext_indexes, jak w:

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

* Patrz opcję CHANGE_TRACKING dla komendy CREATE FULLTEXT INDEX.

Powiązane problemy