【发布时间】:2012-06-10 06:42:54
【问题描述】:
我的经理说,在基础表数据更改后,全文搜索索引可能需要一段时间才能更新。
例如,如果我有一个表 Products 和一个列 Description,并且我更新了该描述,那么我可能需要一些时间才能搜索该新描述。真的吗?这需要多长时间?这在 SQL 2008 中有所改进吗?
如果用户修改了描述,我们要求后续搜索应该搜索修改后的数据,而不是更改之前的陈旧数据。
实现此目的的正确/推荐代码模式是什么?我们是否应该等待索引表明它已经完成?如果是这样,关于索引更新何时完成的保证是什么,例如在繁忙的系统中是否会延迟几分钟(推迟到某个队列,而不是优先于到达数据库的其他命令进行处理)。
【问题讨论】:
-
Full-Text Index Population 描述了针对 FT 指数可能出现的总体类型。它们都不支持立即更新,也没有给出时间限制。
-
你有任何实时经验,一般来说有多快?是几秒钟,还是几分钟或几小时后,我才能搜索新产品?
-
我已经看到它通常需要几秒钟,但这取决于您的 IO 子系统、有多少表、列以及正在处理的数据的大小,我想,所以可能只有在典型/最坏情况下的负载条件下对您自己的系统负责。
标签: sql sql-server sql-server-2008 full-text-search