gpt4 book ai didi

sql-server-2005 - 对 sql server 全文索引更改跟踪和填充的建议

转载 作者:行者123 更新时间:2023-12-04 00:11:55 25 4
gpt4 key购买 nike

我有两个包含数百万条记录的表。
我想对它们的几列进行全文搜索(基本上是名字和姓氏)。但是,这两个表在周末基本上都被删除并被遗留的 DTS 包所取代。
我将更改跟踪设置为自动,当说 DTS 运行时,表被锁定并且所有查询都失败了。

所以,我想以正确的方式做到这一点。我应该为 FTS 更改跟踪和填充使用哪些设置或计划?我应该将更改跟踪设置为关闭,然后在 DTS 导入运行后安排完整的填充吗?

另外,“变更跟踪”和“人口”之间有什么区别,它们之间有什么关系?
如果没有更改跟踪,索引如何工作?
即使更改跟踪关闭,完整填充是否会添加索引?

最佳答案

当表在周末被删除时,有多种方法可以处理索引总体。一种选择是在删除表之前删除表上的全文索引,并在旧 DTS 包替换后重新创建索引。另一种选择是更改索引以将 CHANGE TRACKING 设置为 MANUAL。在表被删除并重新填充后,可以通过调用 ALTER FULLTEXT INDEX ... START UPDATE POPULATION 来触发 ft 索引填充。我更喜欢后者(如果此表看到很多更新,请不要忘记将更改跟踪重置为 AUTO)。

CHANGE_TRACKING 和 POPULATION 之间的区别 -

CHANGE_TRACKING 指定何时以及是否将对表所做的更改传播到全文索引。它可以设置为自动、手动或关闭。

人口 仅当 CHANGE_TRACKING 设置为 MANUAL 或 OFF 时才重要。

当设置为 MANUAL 时,用户必须触发更新填充命令,以便全文可以索引跟踪的更改,即它们不会自动索引。

OFF 设​​置指定 SQL Server 不跟踪更改的数据,而是在命令调用期间仅对表进行一次索引。当在 CHANGE_TRACKING 设置为 OFF 的情况下指定 NO POPULATION 时,全文索引将保持未填充状态,直到用户使用 START FULLTEXT POPULATION 或 START INCREMENTAL POPULATION 子句调用 ALTER FULLTEXT INDEX。

CREATE FULLTEXT INDEX MSDN 文章更深入地介绍了所有这些选项。

关于sql-server-2005 - 对 sql server 全文索引更改跟踪和填充的建议,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8583182/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com