Compartilhar via


Pesquisa Semântica (SQL Server)

A Pesquisa Semântica Estatística fornece informações profundas sobre documentos não estruturados armazenados em bancos de dados do SQL Server extraindo e indexando frases-chave estatisticamente relevantes. Em seguida, ele também usa essas frases-chave para identificar e indexar documentos semelhantes ou relacionados.

Você consulta esses índices semânticos usando três funções de conjunto de linhas Transact-SQL para recuperar os resultados como dados estruturados.

O que posso fazer com a Pesquisa Semântica?

A pesquisa semântica se baseia no recurso de pesquisa de texto completo existente no SQL Server, mas permite novos cenários que vão além das pesquisas de palavra-chave. Embora a pesquisa de texto completo permita consultar as palavras em um documento, a pesquisa semântica permite consultar o significado do documento. As soluções que agora são possíveis incluem extração automática de tags, descoberta de conteúdo relacionado e navegação hierárquica através de conteúdo semelhante. Por exemplo, você pode consultar o índice de frases-chave para criar a taxonomia para uma organização ou para um corpus de documentos. Ou você pode consultar o índice de similaridade do documento para identificar currículos que correspondem a uma descrição do trabalho.

Os exemplos a seguir demonstram os recursos da Pesquisa Semântica.

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 pontuação que classifica a significância estatística de cada frase-chave. Essa consulta chama a função semantickeyphrasetable (Transact-SQL).

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. Ele apresenta os resultados em ordem decrescente pela pontuação que classifica a similaridade dos dois documentos. Essa consulta chama a função semanticsimilaritytable (Transact-SQL).

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 uns aos outros. Ele apresenta os resultados em ordem decrescente pela pontuação que classifica o peso de cada frase-chave. Essa consulta chama a função semanticsimilaritydetailstable (Transact-SQL).

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  
  

Armazenando documentos no SQL Server

Antes de indexar documentos com a Pesquisa Semântica, você precisa armazenar os documentos em um banco de dados do SQL Server.

O recurso FileTable no SQL Server 2014 integra arquivos e documentos não estruturados como elementos essenciais do banco de dados relacional. Como resultado, os desenvolvedores de banco de dados podem manipular documentos em conjunto com dados estruturados em operações em conjuntos Transact-SQL.

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

Tarefas Relacionadas

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

Habilitar 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 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 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 pesquisa semântica
Descreve o processo de indexação semântica e as tarefas relacionadas ao monitoramento e ao gerenciamento dos índices.

Conteúdo relacionado

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