描述语义索引编制过程以及与管理和监视索引相关的任务。
如何:检查语义索引的状态
语义索引的第一个阶段是否已完成?
查询动态管理视图 sys.dm_fts_index_population(Transact-SQL),并检查 状态 和 状态描述 列。
索引的第一个阶段包括全文关键字索引和语义关键短语索引的填充,以及提取文档相似性数据。
USE database_name
GO
SELECT * FROM sys.dm_fts_index_population WHERE table_id = OBJECT_ID('table_name')
GO
语义索引的第二个阶段是否已完成?
查询动态管理视图 sys.dm_fts_semantic_similarity_population(Transact-SQL);并检查状态和状态描述列。
索引的第二个阶段包括语义文档相似性索引的填充。
USE database_name
GO
SELECT * FROM sys.dm_fts_semantic_similarity_population WHERE table_id = OBJECT_ID('table_name')
GO
如何:检查语义索引的大小
语义关键短语索引或语义文档相似性索引的逻辑大小是什么?
查询动态管理视图sys.dm_db_fts_index_physical_stats(Transact-SQL)。
逻辑大小以索引页数显示。
USE database_name
GO
SELECT * FROM sys.dm_db_fts_index_physical_stats WHERE object_id = OBJECT_ID('table_name')
GO
全文目录的全文索引和语义索引的总大小是多少?
查询 FULLTEXTCATALOGPROPERTY (Transact-SQL) 元数据函数的 IndexSize 属性。
SELECT FULLTEXTCATALOGPROPERTY('catalog_name', 'IndexSize')
GO
全文目录的全文索引和语义索引中为多少项编制索引?
查询 FULLTEXTCATALOGPROPERTY (Transact-SQL) 元数据函数的 ItemCount 属性。
SELECT FULLTEXTCATALOGPROPERTY('catalog_name', 'ItemCount')
GO
如何强制填充语义索引
可以使用 START/STOP/PAUSE 或 RESUME POPULATION 子句来强制填充全文和语义索引,其语法和行为与全文索引描述的语法和行为相同。 有关详细信息,请参阅 ALTER FULLTEXT INDEX (Transact-SQL) 和 填充 Full-Text 索引。
由于语义索引依赖于全文索引编制,因此仅当填充关联的全文索引时,才会填充语义索引。
示例:启动对全文索引和语义索引的全面填充
以下示例通过更改 AdventureWorks2012 示例数据库中 Production.Document 表的现有全文索引来启动全文索引和语义索引的完整填充。
USE AdventureWorks2012
GO
ALTER FULLTEXT INDEX ON Production.Document
START FULL POPULATION
GO
如何:禁用或重新启用语义索引
可以通过将 ENABLE/DISABLE 子句与全文索引描述的语法和行为一起使用来启用或禁用全文或语义索引。 有关详细信息,请参阅 ALTER FULLTEXT INDEX (Transact-SQL)。
禁用并暂停语义索引时,对语义数据的查询将继续正常运行,并返回已经编制索引的数据。 此行为与 Full-Text 搜索的行为不一致。
-- 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
语义索引的阶段
启用语义搜索后,每列会针对两种类型的数据进行索引:
关键短语
文档相似性
语义索引在两个阶段进行,并结合全文索引:
阶段 1。 全文关键字索引和语义关键短语索引同时填充。 此时还会提取索引文档相似性所需的数据。
阶段 2。 然后填充语义文档相似性索引。 此索引取决于在上一阶段填充的两个索引。
问题:未填充语义索引
是否填充了关联的全文索引?
由于语义索引依赖于全文索引编制,因此仅当填充关联的全文索引时,才会填充语义索引。
是否已正确安装和配置全文搜索和语义搜索?
有关详细信息,请参阅 安装和配置语义搜索。
FDHOST 服务是否不可用,或者是否有其他条件会导致全文索引失败?
有关更多信息,请参阅 Full-Text 索引问题排查。