Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 2005 sql server全文索引更改跟踪和填充建议_Sql Server 2005_Full Text Search - Fatal编程技术网

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

Sql server 2005 sql server全文索引更改跟踪和填充建议,sql-server-2005,full-text-search,Sql Server 2005,Full Text Search,我有两个有数百万条记录的表。 我想全文搜索其中的几列(基本上是名字和姓氏)。但是,这两个表基本上都会被删除,并在周末被一个遗留DTS包取代。 我将change tracking设置为automatic,当DTS运行时,表被锁定,所有查询都失败 所以,我想用正确的方法来做这件事。FTS变更跟踪和填充应使用哪些设置或计划?我是否应该将更改跟踪设置为off,然后在DTS导入运行后安排完整填充 此外,“变化跟踪”和“人口”之间有什么区别?它们之间有什么关系? 如果没有更改跟踪,索引如何工作? 即使更改跟

我有两个有数百万条记录的表。
我想全文搜索其中的几列(基本上是名字和姓氏)。但是,这两个表基本上都会被删除,并在周末被一个遗留DTS包取代。
我将change tracking设置为automatic,当DTS运行时,表被锁定,所有查询都失败

所以,我想用正确的方法来做这件事。FTS变更跟踪和填充应使用哪些设置或计划?我是否应该将更改跟踪设置为off,然后在DTS导入运行后安排完整填充

此外,“变化跟踪”和“人口”之间有什么区别?它们之间有什么关系?
如果没有更改跟踪,索引如何工作?

即使更改跟踪关闭,完整填充是否也会添加索引

周末删除表时,有多种方法可以接近索引总体。一个选项是在擦除表之前将全文索引放在表上,并在替换旧DTS包之后重新创建索引。另一个选项是更改索引,将更改跟踪设置为手动。删除并重新填充表后,可以通过调用ALTER FULLTEXT index触发ft索引填充。。。开始更新人口。我更喜欢后者(如果此表出现大量更新,请不要忘记将更改跟踪重置为自动)

变化跟踪和总体之间的差异-

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

人口仅当更改跟踪设置为手动或关闭时才起作用

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

OFF设置指定SQL Server不跟踪更改的数据,而是在命令调用期间仅对表进行一次索引。如果在CHANGE_TRACKING设置为OFF的情况下未指定填充,则在用户使用START FULLTEXT POPULATION或START INCREMENTAL POPULATION子句调用ALTER FULLTEXT INDEX之前,不会填充全文索引


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

说得好。你必须让我登录到+1你@弗雷加斯-你一定要为他的好回答而大发雷霆。此外,如果没有其他答案的话,这应该是一个最好的答案。我觉得它很有用。