precompute rank 选项
更新日期: 2006 年 7 月 17 日
使用 precompute rank 服务器级别高级选项可以提高指定了 top_n_by_rank 参数的 FREETEXTTABLE 查询的性能。此选项是一项优化策略,可在 SQL Server 计算查询时的 FREETEXTTABLE 排名时减少 CPU 资源的使用。该选项设置为 1 时,指定了 top_n_by_rank 的 FREETEXTTABLE 查询会使用存储在全文目录中的预计算排名数据。
用于 FREETEXTTABLE 查询与 CONTAINSTABLE 查询的排名计算类型之间存在明显区别。通过使用 SQL Server 2005 中的预计算排名优化,FREETEXTTABLE 查询可使用全文目录中存储的排名值而无需动态地计算这些值,所以使用 top_n_by_rank 参数的这些 FREETEXTTABLE 查询可将速度提高到接近 CONTAINSTABLE 查询的速度。
在使用预计算排名数据时,top_n_by_rank 返回的结果集可能与将 precompute rank 选项设置为 0 时返回的结果集包含的结果不同。在将 precompute rank 选项设置为 1 时,预计算并存储在全文目录中的排名可能与将 precompute rank 选项设置为 0 时动态计算的排名不同。
查看并设置 precompute rank 选项
默认情况下,此选项设置为 0 (FALSE)。若要查看或设置 precompute rank 选项的状态,请使用以下脚本。
-- To view advanced server-level options, first run this script if the
-- show advanced option is not already set to 1, TRUE.
EXEC sp_configure 'show advanced option', '1';
GO
RECONFIGURE;
GO
-- To view the status of the precompute rank option
EXEC sp_configure;
GO
-- Or
SELECT *
FROM sys.configurations
WHERE name = N'precompute rank';
GO
-- To set the precompute rank option to TRUE
EXEC sp_configure 'precompute rank', '1';
GO
RECONFIGURE;
GO
更改历史记录
发布日期 | 历史记录 |
---|---|
2006 年 7 月 17 日 |
|
请参阅
其他资源
FREETEXTTABLE (Transact-SQL)
sp_configure (Transact-SQL)