Udostępnij przez


Wyszukiwanie semantyczne (SQL Server)

Dotyczy:SQL Server

Wyszukiwanie semantyczne statystyczne zapewnia szczegółowe informacje na temat dokumentów bez struktury przechowywanych w bazach danych programu SQL Server przez wyodrębnianie i indeksowanie statystycznie odpowiednich kluczowych fraz. Następnie używa tych kluczowych fraz do identyfikowania i indeksowania dokumentów, które są podobne lub powiązane.

Co można zrobić za pomocą wyszukiwania semantycznego?

Wyszukiwanie semantyczne opiera się na istniejącej funkcji wyszukiwania pełnotekstowego w programie SQL Server, ale umożliwia nowe scenariusze, które wykraczają poza wyszukiwanie słów kluczowych. Wyszukiwanie pełnotekstowe umożliwia wykonywanie zapytań względem wyrazów w dokumencie, natomiast wyszukiwanie semantyczne umożliwia wykonywanie zapytań dotyczących znaczenia dokumentu. Rozwiązania, które są teraz możliwe, obejmują automatyczne wyodrębnianie tagów, powiązane odnajdywanie zawartości i nawigację hierarchiczną w podobnej zawartości. Możesz na przykład wykonać zapytanie dotyczące indeksu kluczowych fraz, aby utworzyć taksonomię dla organizacji lub dla korpusu dokumentów. Możesz też wykonać zapytanie dotyczące indeksu podobieństwa dokumentu, aby zidentyfikować życiorysy zgodne z opisem zadania.

W poniższych przykładach pokazano możliwości wyszukiwania semantycznego. Jednocześnie w tych przykładach pokazano trzy funkcje zestawu wierszy Transact-SQL używane do wykonywania zapytań dotyczących indeksów semantycznych i pobierania wyników jako danych strukturalnych.

Znajdowanie kluczowych fraz w dokumencie

Poniższe zapytanie pobiera kluczowe frazy, które zostały zidentyfikowane w przykładowym dokumencie. Przedstawia wyniki w kolejności malejącej według wyniku, który klasyfikuje statystyczne znaczenie każdej frazy kluczowej.

To zapytanie wywołuje funkcję semantickeyphrasetable .

SET @Title = 'Sample Document.docx'  
  
SELECT @DocID = DocumentID  
    FROM Documents  
    WHERE DocumentTitle = @Title  
  
SELECT @Title AS Title, keyphrase, score  
    FROM SEMANTICKEYPHRASETABLE(Documents, *, @DocID)  
    ORDER BY score DESC  
  

Znajdowanie podobnych lub powiązanych dokumentów

Poniższe zapytanie pobiera dokumenty, które zostały zidentyfikowane jako podobne lub powiązane z przykładowym dokumentem. Przedstawia wyniki w kolejności malejącej według wyniku, który plasuje podobieństwo dwóch dokumentów.

To zapytanie wywołuje funkcję semanticsimilaritytable .

SET @Title = 'Sample Document.docx'  
  
SELECT @DocID = DocumentID  
    FROM Documents  
    WHERE DocumentTitle = @Title  
  
SELECT @Title AS SourceTitle, DocumentTitle AS MatchedTitle,  
        DocumentID, score  
    FROM SEMANTICSIMILARITYTABLE(Documents, *, @DocID)  
    INNER JOIN Documents ON DocumentID = matched_document_key  
    ORDER BY score DESC  
  

Znajdowanie kluczowych fraz, które sprawiają, że dokumenty są podobne lub powiązane

Poniższe zapytanie pobiera kluczowe frazy, które sprawiają, że dwa przykładowe dokumenty są podobne lub powiązane ze sobą. Przedstawia wyniki w kolejności malejącej według wyniku, który klasyfikuje wagę każdej frazy kluczowej.

To zapytanie wywołuje funkcję semanticsimilaritydetailstable .

SET @SourceTitle = 'first.docx'  
SET @MatchedTitle = 'second.docx'  
  
SELECT @SourceDocID = DocumentID FROM Documents WHERE DocumentTitle = @SourceTitle  
SELECT @MatchedDocID = DocumentID FROM Documents WHERE DocumentTitle = @MatchedTitle  
  
SELECT @SourceTitle AS SourceTitle, @MatchedTitle AS MatchedTitle, keyphrase, score  
    FROM semanticsimilaritydetailstable(Documents, DocumentContent,  
        @SourceDocID, DocumentContent, @MatchedDocID)  
    ORDER BY score DESC  
  

Przechowywanie dokumentów w programie SQL Server

Aby można było indeksować dokumenty za pomocą wyszukiwania semantycznego, należy przechowywać dokumenty w bazie danych programu SQL Server.

Funkcja FileTable w programie SQL Server sprawia, że niezorganizowane pliki i dokumenty są pełnoprawnymi obiektami relacyjnej bazy danych. W związku z tym deweloperzy baz danych mogą manipulować dokumentami razem z danymi strukturalnymi w operacjach oparte na zestawach Transact-SQL.

Aby uzyskać więcej informacji na temat funkcji FileTable, zobacz FileTables (SQL Server). Aby uzyskać informacje o funkcji FILESTREAM, która jest inną opcją przechowywania dokumentów w bazie danych, zobacz FILESTREAM (SQL Server).

Powiązane zadania

Instalowanie i konfigurowanie wyszukiwania semantycznego
Opisuje wymagania wstępne dotyczące wyszukiwania statystycznego oraz sposób ich instalowania lub sprawdzania.

Włączanie wyszukiwania semantycznego w tabelach i kolumnach
Opisuje sposób włączania lub wyłączania semantycznego indeksowania statystycznego dla wybranych kolumn zawierających dokumenty lub tekst.

Znajdowanie kluczowych fraz w dokumentach za pomocą wyszukiwania semantycznego
Opisuje sposób znajdowania kluczowych fraz w dokumentach lub kolumnach tekstowych skonfigurowanych do indeksowania statystycznego.

Znajdowanie podobnych i powiązanych dokumentów za pomocą wyszukiwania semantycznego
Opisuje sposób znajdowania podobnych lub powiązanych dokumentów lub wartości tekstowych oraz informacji o tym, jak są one podobne lub powiązane, w kolumnach skonfigurowanych do indeksowania semantycznego statystycznego.

Zarządzanie i monitorowanie wyszukiwania semantycznego
Opisuje proces indeksowania semantycznego oraz zadania związane z monitorowaniem indeksów i zarządzaniem nimi.

Treści powiązane

Semantyczne wyszukiwanie DDL, funkcje, procedury składowane i widoki
Wyświetla listę instrukcji Transact-SQL i obiektów bazy danych programu SQL Server dodanych lub zmienionych w celu obsługi wyszukiwania statystycznego.