相关疑难解决方法(0)

我应该什么时候重建索引?

我应该什么时候重建我的关系数据库 (SQL Server) 中的索引?

是否有定期重建索引的情况?

sql-server index-maintenance

60
推荐指数
5
解决办法
9万
查看次数

振荡的片段数量会降低 FTS 查询性能吗?

我有一个FTS Catalog包含 ~10 6行的表。它曾经像魅力一样工作,但最近,由于未知原因,它开始随机出现非常糟糕的(查询> 30 秒)性能。

全文索引维护的阅读指南我仔细研究sys.fulltext_index_fragments并注意到以下几点:

  1. 片段数量在2到20之间高频振荡(每分钟多次);
  2. 最大的片段包含约 10 5行,大小为 11Mb;
  3. 其他包含 1 到 40 行。

这个波动的片段数量会干扰 SQL Server 的执行计划选择吗?

我能做些什么来清理这个?

performance sql-server optimization full-text-search sql-server-2014 query-performance

6
推荐指数
1
解决办法
117
查看次数

维护大表的全文索引

我使用的是 SQL Server 2008,有一个用于报告目的的表,其中包含 500,000 条记录,这些记录很容易达到数百万条。该表将采用全文索引来快速搜索少数列。

由于这是报告表而不是源事务表,因此有时会添加新记录,而有时由于源表中发生的更改而必须删除现有记录。

我的问题是关于构建(正在进行的)报告表并维护该表的全文索引的最佳方法。

添加全文索引后,我应该:

  1. 保留索引,并根据需要删除/添加记录
  2. 保留索引,截断报告表,然后插入所有适当的记录
  3. 其他?

到目前为止,我在研究时已经看到了这些文章,但这种情况的最佳实践并不明显。

  1. https://learn.microsoft.com/en-us/sql/relational-databases/search/get-started-with-full-text-search?redirectedfrom=MSDN&view=sql-server-ver15
  2. https://techcommunity.microsoft.com/t5/datacat/best-practices-for-integrated-full-text-search-ifts-in-sql-2008/ba-p/305000
  3. https://social.msdn.microsoft.com/Forums/en-US/c743f6e4-88c6-478b-954b-ba8207e391c5/sql-2005-full-text-index-rebuild-nightly-best-approach?forum=sqldatabaseengine

sql-server-2008 best-practices full-text-search

5
推荐指数
1
解决办法
3959
查看次数