Pesquisa semântica (SQL Server)

Aplica-se a: SQL Server

A pesquisa semântica estatística fornece uma profunda compreensão de documentos não estruturados armazenados em bancos de dados do SQL Server extraindo e indexando frases-chave estatisticamente relevantes. Portanto, ele usa essas frases-chave para identificar e indexar documentos semelhantes ou relacionados.

O que é possível fazer com a pesquisa semântica?

A pesquisa semântica tem como base o recurso de pesquisa de texto completo existente no SQL Server, mas habilita novos cenários que ampliam as pesquisas de palavra-chave. Enquanto a pesquisa de texto completo permite que você consulte as palavras em um documento, a pesquisa semântica permite a consulta do significado do documento. Agora, as soluções possíveis incluem a extração automática de marcas, a descoberta de conteúdo relacionado e a navegação hierárquica por conteúdo semelhante. Por exemplo, você pode consultar o índice de frases-chave para criar a taxonomia para uma organização ou para um corpo de documentos. Ou, você pode consultar o índice de similaridade do documento para identificar os currículos que correspondem a uma descrição do trabalho.

Os exemplos a seguir demonstram os recursos da Pesquisa Semântica. Ao mesmo tempo, esses exemplos demonstram as três funções de conjunto de linhas do Transact-SQL usadas para consultar os índices de semânticos e recuperar os resultados como dados estruturados.

Localizar as frases-chave em um documento

A consulta a seguir obtém as frases-chave que foram identificadas no documento de exemplo. Apresenta os resultados em ordem decrescente pela contagem que classifica a significância estatística de cada frase-chave.

Essa consulta chama a função 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  
  

Localizar documentos semelhantes ou relacionados

A consulta a seguir obtém os documentos que foram identificados como semelhantes ou relacionados ao documento de exemplo. Apresenta os resultados em ordem decrescente pela pontuação que classifica a semelhança dos dois documentos.

Essa consulta chama a função 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  
  

Localizar as frases-chave que tornam documentos semelhantes ou relacionados

A consulta a seguir obtém as frases-chave que tornam os dois documentos de exemplo semelhantes ou relacionados um ao outro. Apresenta os resultados em ordem decrescente pela contagem que classifica o peso de cada frase-chave.

Essa consulta chama a função 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  
  

Armazenar seus documentos no SQL Server

Para poder indexar documentos com pesquisa semântica, é preciso armazenar os documentos em um banco de dados do SQL Server.

O recurso FileTable no SQL Server transforma arquivos e documentos não estruturados em objetos de primeira classe do banco de dados relacional. Como resultado, os desenvolvedores de banco de dados podem manipular documentos junto com dados estruturados em operações baseadas em conjuntos Transact-SQL.

Veja mais informações sobre o recurso FileTable em FileTables (SQL Server). Veja informações sobre o recurso FILESTREAM, que é outra opção para armazenar documentos no banco de dados, em FILESTREAM (SQL Server).

Tarefas relacionadas

Instalar e configurar a pesquisa semântica
Descreve os pré-requisitos para a pesquisa semântica estatística e como instalá-los ou verificá-los.

Habilitar a pesquisa semântica em tabelas e colunas
Descreve como habilitar ou desabilitar a indexação semântica estatística em colunas selecionadas que contêm documentos ou texto.

Localizar frases chave em documentos com a pesquisa semântica
Descreve como localizar as frases chave em documentos ou colunas de texto configuradas para indexação semântica estatística.

Localizar documentos semelhantes e relacionados com a pesquisa semântica
Descreve como localizar documentos ou valores de texto semelhantes ou relacionados, e informações sobre como eles são semelhantes ou relacionados, em colunas configuradas para indexação semântica estatística.

Gerenciar e monitorar a pesquisa semântica
Descreve o processo de indexação semântica e as tarefas relacionadas a monitoramento e gerenciamento dos índices.

Conteúdo relacionado

DDL, funções, procedimentos armazenados e exibições de pesquisa semântica
Lista as instruções Transact-SQL e os objetos de banco de dados do SQL Server adicionados ou alterados para oferecer suporte à pesquisa semântica estatística.