Hantera och övervaka semantisk sökning

gäller för:SQL Server

Den här artikeln täcker hur man kontrollerar indexeringsstatus och storlek, tvingar populationen och inaktiverar eller återaktiverar semantisk indexering. Semantisk indexering sker i två faser i kombination med fulltextindexering.

Kontrollera status för semantisk indexering

Är den första fasen av semantisk indexering klar?

Sök i den sys.dm_fts_index_population dynamiska hanteringsvyn och kontrollera kolumnerna status och status_description .

Den första fasen av indexeringen omfattar populationen av nyckelordsindexet i fulltext och det semantiska nyckelfrasindexet, samt extrahering av dokumentlikhetsdata.

USE database_name;
GO

SELECT *
FROM sys.dm_fts_index_population
WHERE table_id = OBJECT_ID('table_name');
GO

Är den andra fasen av semantisk indexering klar?

Sök i den sys.dm_fts_semantic_similarity_population dynamiska hanteringsvyn och kontrollera kolumnerna status och status_description .

Den andra fasen av indexering omfattar populationen av semantiska dokumentlikhetsindex.

USE database_name;
GO

SELECT *
FROM sys.dm_fts_semantic_similarity_population
WHERE table_id = OBJECT_ID('table_name');
GO

Kontrollera storleken på semantiska index

Vilken är den logiska storleken på ett semantiskt nyckelfrasindex eller ett semantiskt dokumentlikhetsindex?

Kör en fråga mot den dynamiska hanteringsvyn sys.dm_db_fts_index_physical_stats.

Den logiska storleken visas i antalet indexsidor.

USE database_name;
GO

SELECT *
FROM sys.dm_db_fts_index_physical_stats
WHERE object_id = OBJECT_ID('table_name');
GO

Vilken är den totala storleken på fulltext- och semantiska index för en fulltextkatalog?

Fråga efter egenskapen IndexSize för metadatafunktionen FULLTEXTCATALOGPROPERTY.

SELECT FULLTEXTCATALOGPROPERTY('catalog_name', 'IndexSize');
GO

Hur många objekt indexeras i fulltext- och semantiska index för en fulltextkatalog?

Efterfråga egenskapen ItemCount för metadatafunktionen FULLTEXTCATALOGPROPERTY.

SELECT FULLTEXTCATALOGPROPERTY('catalog_name', 'ItemCount');
GO

Tvinga populationen av semantiska index

Du kan tvinga populationen av fulltext- och semantiska index genom att använda START, STOP, PAUSE, eller RESUME POPULATION klausulen med samma syntax och beteende som beskrivs för fulltextindex. Mer information finns i ALTER FULLTEXT INDEX och Fylla i fulltextindex.

Eftersom semantisk indexering är beroende av fulltextindexering fylls semantiska index bara i när de associerade fulltextindexen fylls i.

Exempel: Starta en fullständig population av fulltext- och semantiska index

Följande exempel startar en fullständig population av både fulltextindex och semantiska index genom att ändra ett befintligt fulltextindex på tabellen Production.Document i exempeldatabasen AdventureWorks2025.

USE AdventureWorks2025;
GO

ALTER FULLTEXT INDEX ON Production.Document
    START FULL POPULATION;
GO

Inaktivera eller återaktivera semantisk indexering

Du kan aktivera eller inaktivera fulltext- eller semantisk indexering genom att använda or-klausulen ENABLEDISABLE med samma syntax och beteende som beskrivs för fulltextindex. Mer information finns i ALTER FULLTEXT INDEX.

När semantisk indexering inaktiveras och pausas fortsätter frågor om semantiska data att fungera korrekt och returnera tidigare indexerade data. Detta beteende stämmer inte överens med beteendet hos Full-Text Search.

-- To disable semantic indexing on a table
USE database_name;
GO

ALTER FULLTEXT INDEX ON table_name DISABLE;
GO

-- To re-enable semantic indexing on a table
USE database_name;
GO

ALTER FULLTEXT INDEX ON table_name ENABLE;
GO

Om faserna i semantisk indexering

Semantisk sökning indexerar två typer av data för varje kolumn där den är aktiverad:

  1. Nyckelfraser

  2. Dokumentsimilaritet

Semantisk indexering sker i två faser, tillsammans med fulltextindexering:

  1. Fas 1. Nyckelordsindexet för fulltext och det semantiska nyckelfrasindexet fylls i parallellt samtidigt. Den data som krävs för att indexera likheten hos dokument extraheras också samtidigt.

  2. Fas 2. Semantiska dokumentlikhetsindex fylls sedan i. Det här indexet beror på båda indexen som fylldes i i föregående fas.

Problem: Semantiska index är inte fyllda

Fylls de associerade fulltextindexen i?

Eftersom semantisk indexering är beroende av fulltextindexering fylls semantiska index bara i när de associerade fulltextindexen fylls i.

Är Full-Text Search och Semantic Search korrekt installerade och konfigurerade?

Mer information finns i Installera och konfigurera semantisk sökning.

Är fdhost-tjänsten inte tillgänglig, eller finns det något annat villkor som skulle göra att fulltextindexering misslyckas?

För mer information, se Felsökning av fulltextindexering.