Architettura della ricerca full-text

Data aggiornamento: 14 aprile 2006

In Microsoft SQL Server 2005, la ricerca full-text è supportata da Microsoft Full-Text Engine for SQL Server (MSFTESQL). Il servizio MSFTESQL svolge due ruoli: il supporto per l'indicizzazione e quello per l'esecuzione di query.

Nella figura seguente viene illustrata l'architettura della ricerca full-text in SQL Server.

Diagramma dell'architettura della ricerca full-text

L'architettura è costituita dai processi seguenti:

  • Processo di SQL Server (Sqlservr.exe)
  • Motore di ricerca full-text Microsoft per il processo SQL Server (Msftesql.exe)
  • Processo del daemon di filtri per il motore di ricerca full-text Microsoft (Msftefd.exe)

Ognuno di questi processi contiene diversi componenti, descritti nelle sezioni che seguono.

Processo di SQL Server

Il processo di SQL Server è costituito dai componenti seguenti:

  • Tabelle utente
    Queste tabelle contengono i dati da inserire nell'indice full-text.
  • Mappa delle chiavi
    Questo componente contiene il mapping tra i valori dei dati delle colonne chiave full-text e gli ID dei documenti interni.
  • Query Processor di SQL Server
  • Gatherer full-text Microsoft
    Questo componente consente di pianificare e gestire il popolamento degli indici full-text, nonché di monitorare i cataloghi full-text.

Processo del motore di ricerca full-text Microsoft per SQL Server (MSFTESQL)

Il servizio MSFTESQL è responsabile delle operazioni indicate di seguito:

  • Popolamento e gestione dei cataloghi full-text.
  • Semplificazione delle ricerche full-text nelle tabelle dei database di SQL Server.

Il processo MSFTESQL ospita i componenti elencati nella tabella seguente.

Componente Descrizione

Strumento di gestione del daemon di filtri

Consente il monitoraggio dello stato del processo del daemon di filtri per il motore di ricerca full-text Microsoft (MSFTEFD).

Indicizzatore

Consente di costruire la struttura dell'indice inverso utilizzata per archiviare i token indicizzati. Per ulteriori informazioni, vedere Struttura di un indice full-text.

File del thesaurus

Contengono i sinonimi dei termini della ricerca. Per ulteriori informazioni, vedere Thesaurus.

File delle parole non significative

Contengono un elenco delle parole che ricorrono frequentemente e che non risultano utili per la ricerca. Per ulteriori informazioni, vedere Parole non significative.

Word breaker e stemmer

Eseguono l'analisi linguistica su tutti i dati con indicizzazione full-text. Un word breaker è il componente che determina la posizione dell'inizio e della fine delle parole all'interno di un flusso di testo nella riga di cui viene eseguita l'indicizzazione full-text. Uno stemmer estrae la radice di una determinata parola. Ad esempio, "running", "ran" e "runner" sono forme diverse del termine "run". Il servizio MSFTESQL richiama gli stemmer durante la query se si tratta di una query FREETEXT o se è necessaria un'espansione flessiva.

Per ulteriori informazioni, vedere Word breaker e stemmer.

Per ulteriori informazioni sul servizio MSFTESQL, vedere Microsoft Full-Text Engine for SQL Server.

Processo del daemon di filtri per il motore di ricerca full-text Microsoft (MSFTEFD)

MSFTEFD viene generato dal servizio MSFTESQL durante il processo di indicizzazione full-text. Il servizio MSFTEFD include i componenti seguenti, responsabili dell'accesso ai dati delle tabelle e della relativa applicazione di filtri, word breaker e stemmer.

  • Gestore di protocollo
    In SQL Server 2005, questo componente accede ai dati di una tabella in un database specificato.
  • Filtri
    Estraggono un flusso di informazioni testuali da un documento, eliminando tutte le informazioni di formattazione e di carattere non testuale. Per ulteriori informazioni, vedere Filtri di ricerca full-text.
  • Word breaker e stemmer

Tabelle interne

La ricerca full-text utilizza le tabelle interne seguenti:

  • fulltext_index_map memorizza i mapping tra colonne chiave full-text e ID dei documenti interni che identificano i documenti in modo univoco.
  • fulltext_catalog_freelist memorizza gli ID dei documenti non utilizzati.

[!NOTA] Queste tabelle sono solo per uso interno. Non possono essere modificate né sottoposte a query. La compatibilità con le versioni precedenti non è garantita, come anche la disponibilità di queste tabelle nelle versioni future di SQL Server.

Cronologia delle modifiche

Versione Cronologia

14 aprile 2006

Nuovo contenuto:
  • Aggiunta di informazioni sulle tabelle interne.

Vedere anche

Concetti

Microsoft Full-Text Engine for SQL Server
Processo di indicizzazione e query full-text

Altre risorse

Tabelle interne

Guida in linea e informazioni

Assistenza su SQL Server 2005