Udostępnij za pośrednictwem


Indeksowania pełnotekstowego i proces kwerendy

Składnik indeksowania przeszukiwanie pełnego tekstu jest odpowiedzialny za wstępne zapełnianie indeksu pełnotekstowego i kolejne uaktualnienie tego indeksu, podczas modyfikacji danych w tabelach indeksowanych pełnego tekstu.

Proces indeksowania pełnotekstowego

Po zainicjowaniu zapełnianie pełnego tekstu (przeszukiwanie) Aparat pełnotekstowe wypycha duże partie danych do pamięci i powiadamia host demona filtru.Filtry hosta i word dzieli dane i konwertuje przekonwertowane dane do listy wyrazów odwrócony.Następnie przeszukiwanie pełnego tekstu ściąga przekonwertowane dane z listy wyrazów, przetwarza dane, aby usunąć stopwords i będzie się powtarzał listy wyrazów dla partia do jednego lub kilku indeksów odwrócony.

Podczas indeksowania danych przechowywanych w varbinary(max) lub image kolumna, filtru, który implementuje IFilter interfejs tekstu ekstraktów opartych na format pliku danych (na przykład Microsoft programu Word).W niektórych przypadkach wymaga składników filtru varbinary(max), lub image dane mają być zapisywane w folderze filterdata zamiast jest realizowana w pamięci.

Jako część przetwarzania zebrane dane są przekazywane dzielącego separatora tekstu do poszczególnych tokeny lub słów kluczowych.Język tokenizacja używany jest określony poziom kolumna lub mogą zostać zidentyfikowane w varbinary(max), image, lub xml danych przez składnik filtru.

Dodatkowe przetwarzanie może być wykonane do usunięcia stopwords i znormalizować tokeny przed są przechowywane w indeksie pełnego tekstu lub fragmentu indeksu.

Po zakończeniu zapełnianie procesu scalania końcowym zostanie wywołany, który scala fragmenty indeksu razem jednego wzorca indeksu pełnotekstowego.To wyniki wydajności udoskonalone kwerendy, ponieważ tylko indeks główny musi kwerendy zamiast liczbę fragmentów indeksu i lepiej punktacji statystyki mogą być stosowane do klasyfikacji istotności.

Ostrzeżenie

Scalanie główne może być intensywnie we/wy, ponieważ duże ilości danych muszą być zapisywane i odczytać, gdy indeks fragmenty są scalane, chociaż nie blok przychodzących kwerend.Ponadto wzorca scalanie dużą ilość danych można utworzyć długo działającą transakcję, opóźniania obcinania dziennika transakcji podczas punkt kontrolny.W takim przypadek dziennika transakcji może być znacznie rosnąć w pełni model odzyskiwanie.Najlepszym rozwiązaniem, należy zapewnić, że dziennik transakcji zawiera wystarczająco dużo miejsca dla transakcji długim przed reorganizowanie dużych indeksu pełnotekstowego w bazie danych, która korzysta z pełnego model odzyskiwanie.Aby uzyskać więcej informacji, zobacz Rozmiar pliku dziennika transakcji.

Podczas badania proces pełnego tekstu

Procesor kwerend przekazuje pełnotekstowe części kwerendy do aparatu pełnego tekstu do przetworzenia.Aparat pełnotekstowe wykonuje dzielenia wyrazów i, opcjonalnie, tezaurus osiągnięcia wynikające i przetwarzania stopword (wyraz pomijalny).Następnie pełnotekstowe części kwerendy są przedstawiane w formie operatorów SQL, przede wszystkim jako strumieniowe tabela-wycenione funkcje (STVFs).Podczas wykonywania kwerendy te STVFs dostęp do indeksu odwrócony pobrać poprawne wyniki.Wyniki są albo zwracane do klient w tym momencie lub są dalej przetwarzane przed zwróceniem się do klient.