Struttura di un indice full-text
La comprensione della struttura di un indice full-text consente all'utente di capire come funziona il servizio Microsoft Full-Text Engine for SQL Server (MSFTESQL). Nell'estratto seguente della tabella Document del database Adventure Works vengono descritte due colonne della tabella, la colonna DocumentID e la colonna Title, e tre righe.
In questo esempio si suppone che nella colonna Title sia stato creato un indice full-text.
DocumentID | Title |
---|---|
1 |
Crank Arm and Tire Maintenance |
2 |
Front Reflector Bracket and Reflector Assembly 3 |
3 |
Front Reflector Bracket Installation |
Nel frammento della tabella seguente viene descritto il contenuto dell'indice full-text creato nella colonna Title della tabella Document.
[!NOTA] Gli indici full-text contengono più informazioni rispetto a quelle riportate nella tabella seguente. La tabella seguente ha solo scopo illustrativo.
Keyword | ColId | DocId | Occ |
---|---|---|---|
Crank |
1 |
1 |
1 |
Arm |
1 |
1 |
2 |
Tire |
1 |
1 |
4 |
Maintenance |
1 |
1 |
5 |
Front |
1 |
2 |
1 |
Front |
1 |
3 |
1 |
Reflector |
1 |
2 |
2 |
Reflector |
1 |
2 |
5 |
Reflector |
1 |
3 |
2 |
Bracket |
1 |
2 |
3 |
Bracket |
1 |
3 |
3 |
Assembly |
1 |
2 |
6 |
3 |
1 |
2 |
7 |
Installation |
1 |
3 |
4 |
La colonna Keyword contiene la rappresentazione di un singolo token estratto al momento dell'indicizzazione. I word breaker stabiliscono il modo in cui un token viene determinato.
La colonna ColId contiene un valore che corrisponde a una particolare tabella e una colonna con indicizzazione full-text.
La colonna DocId contiene valori per un integer a quattro byte associato a un determinato valore chiave full-text in una tabella con indicizzazione full-text. I valori DocId che soddisfano una condizione di ricerca vengono passati dal servizio MSFTESQL al motore di database, dove vengono mappati ai valori chiave full-text della tabella di base su cui viene eseguita la query.
La colonna Occ contiene un valore integer. Per ogni valore DocId è presente un elenco di valori di occorrenza che corrispondono all'offset relativo di una particolare parola chiave all'interno di DocId. I valori di occorrenza sono utili per determinare le corrispondenze di frase o prossimità, ad esempio frasi con valori di occorrenza numericamente adiacenti. Sono inoltre utili per calcolare i punteggi di rilevanza, ad esempio il numero di occorrenze di una parola chiave in un DocId può essere utilizzato per l'assegnazione del punteggio.
Vedere anche
Concetti
Microsoft Full-Text Engine for SQL Server
Nozioni fondamentali sulla ricerca full-text
Indici full-text
Altre risorse
CREATE FULLTEXT INDEX (Transact-SQL)