gpt4 book ai didi

sql-server - 插入到 Sql Server 2005 上的全文索引表时性能下降

转载 作者:行者123 更新时间:2023-12-04 00:59:52 28 4
gpt4 key购买 nike

我正在尝试将大量记录插入到全文索引的表中。我已将更改跟踪设置为 auto

记录是从另一个表中插入的,通常一次插入大约 50,000 条记录。在 SQL Server 2008 上,这大约需要 5 秒才能完成。但是在我们的实时 2005 环境中运行这需要超过 10 分钟。

查看执行计划,问题似乎是插入到全文跟踪表的聚簇索引中。主键列是用 newsequentialid() 分配的 uniqueidentifier。但是,虽然 2008 年在 fulltext_index_docidstatus 上执行了 1 次聚集索引合并,但 2005 年在 fulltext_index_map 上执行了 50,000 次聚集索引插入

不幸的是,目前无法升级服务器。关闭更改跟踪可以解决问题,但我真的不想这样做,因为我们自己管理人口不会很好。更改跟踪似乎是让新记录出现在全文索引中的最快方式,这是一个优先事项。

有没有办法在保持更改跟踪启用的同时解决这个问题?

最佳答案

我怀疑您问题的真正本质是全文引擎在 2008 年移入了 SQL Server 内部,而以前的版本使用的是外部 MSFTESQL 服务。这意味着 SQL 2008 在使用全文索引时可以充分利用基于集合的操作,而正如您所见,2005 必须单独处理每一行。更多详细信息,请参阅此 Microsoft White Paper .底线是,我认为您必须关闭更改跟踪才能实现您正在寻求的性能或忍受较长的插入时间。

关于sql-server - 插入到 Sql Server 2005 上的全文索引表时性能下降,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3301470/

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