Udostępnij za pośrednictwem


Full-Text Search Overview

Kwerendy pełnego tekstu wyszukiwanie lingwistyczne dla danych tekstowych w indeksach przez działający na wyrazy i frazy oparte na regułach określonego języka, takie jak Polski lub angielski.Kwerendy pełnego tekstu mogą zawierać prosty wyrazów i fraz lub wielu formularzy wyrazu lub frazy.

Przeszukiwanie pełnego tekstu ma zastosowanie w wielu scenariuszy biznesowych, takich jak firmy e — wyszukiwanie elementów witryna sieci Web; prawa firmy — wyszukiwanie przypadek historie w repozytorium danych prawne; lub działów Zasoby ludzkie — pasujące do opisów zadań z przechowywanych wznawiane.Podstawowe administracyjne i zadania rozwoju przeszukiwanie pełnego tekstu są równoważne, niezależnie od scenariuszy biznesowych.Jednak w przypadku ataku danej firmy indeks pełnotekstowy i kwerendy może być honed do spełnienia celów biznesowych.Na przykład dla wydajności maximizing an e biznesu mogą być ważniejsze niż w klasyfikacji wyniki, odwoływanie dokładność (liczbę istniejących odpowiada rzeczywiście zwracane przez zapytanie pełnotekstowe) lub obsługi wielu języków.Dla firm prawa zwracanie wszystkich możliwych (trafieńCałkowita odwołania informacji) może być najważniejszym pod uwagę.

Omówienie jak skonfigurować bazę danych wyszukiwania Full-Text

Każdy scenariusz administrator bazy danych wykonuje następujące podstawowe kroki, które należy skonfigurować kolumny tabela w bazie danych dla przeszukiwanie pełnego tekstu:

  1. Utwórz wykaz pełnotekstowy.

  2. W każdej tabela, którą chcesz przeszukać Utwórz indeks pełnotekstowy przez:

    1. Zidentyfikuj każdej kolumny tekstu, które mają zostać uwzględnione w indeksie pełnego tekstu.

    2. Jeśli dana kolumna zawiera dokumenty przechowywane jako dane binarne)varbinary, varbinary(max), lub image dane), należy określić kolumny tabela ( Kolumna Typ) Typ każdego dokumentu, w kolumnie indeksowany, które identyfikują.

    3. Określić język, który ma wyszukiwania pełnotekstowego na dokumenty kolumna.

    4. Wybierz mechanizm śledzenia zmian, które ma być używany na indeks pełnotekstowy umożliwia śledzenie zmian w bazowej tabela i jej kolumn.

Przeszukiwanie pełnego tekstu obsługuje wiele języków, korzystając z następujących czynności składniki lingwistyczne: Word wyłączników i stemmers, stoplists zawierające stopwords (znane również jako słowa ignorowane) i plików tezaurusa. Pliki tezaurusa i w niektórych przypadkach stoplists wymagają konfiguracja przez administrator bazy danych.Plik tezaurusa danego obsługuje wszystkie indeksy pełnotekstowe korzystające z odpowiedniego języka, a dany stoplist można skojarzyć z dowolną liczbę indeksy pełnotekstowe.

Aby uzyskać więcej informacji zobaczAdministering Full-Text Search.

Omówienie pełny tekst kwerendy

Po kolumny zostały dodane do indeksu całego tekstu, aplikacji i użytkowników można uruchomić kwerendy pełnego tekstu na tekst w kolumnach.Te kwerendy można wyszukiwać dowolne z następujących czynności:

  • Jeden lub więcej określonych słowa lub zwroty)proste termin)

  • Słowo lub frazę, na którym wyrazy zaczynają się od określonego tekstu)Prefiks okres)

  • Inflectional formularzy określonego programu word)Określenie generowania)

  • Wyraz lub frazę do innej (słowo lub frazęokreślenie odległości)

  • Synonimy formularzy określonego programu word)Słownik wyrazów bliskoznacznych)

  • Wyrazy lub frazy za pomocą ważonych wartości)określenie ważona)

Wszystkie kwerendy pełnego tekstu za pomocą małej grupy Transact-SQL funkcje (CONTAINSTABLE i FREETEXTTABLE) i predykatów (CONTAINS i FREETEXT). Jednak celów wyszukiwania do scenariusza biznesowego danego wpływ dokładne struktury kwerendy pełnego tekstu, na przykład:

  • e biznesu — wyszukiwanie produktów w witrynie sieci Web:

    SELECT product_id FROM products WHERE CONTAINS(product_description, ”Snap Happy 100EZ” OR FORMSOF(THESAURUS,’Snap Happy’) OR ‘100EZ’) AND product_cost<200 …
    
  • Scenariusz rekrutacji — wyszukiwanie kandydatów zadanie, które mają doświadczenie w pracy z SQL Server:

    SELECT candidate_name,SSN FROM candidates WHERE CONTAINS(candidate_resume,”SQL Server”) AND candidate_division =DBA
    

Aby uzyskać więcej informacji zobaczQuerying SQL Server Using Full-Text Search.

Porównanie predykatu LIKE z wyszukiwaniem pełnotekstowym

W przeciwieństwie do wyszukiwania pełnotekstowego predykat LIKE języka Transact-SQL działa tylko z wzorcami znaków.Ponadto za pomocą predykatu LIKE nie można badać sformatowanych danych binarnych.Co więcej wykonanie kwerendy LIKE na dużej ilości danych tekstowych, które nie mają struktury, trwa o wiele dłużej niż wykonanie na tych danych odpowiadającego jej wyszukiwania pełnotekstowego.Wykonanie kwerendy LIKE w przypadku milionów wierszy danych tekstowych może trwać kilka minut, podczas gdy wyszukiwanie pełnotekstowe w tych samych danych może trwać kilka sekund lub krócej, w zależności od liczby zwracanych wierszy.