2009-10-12 53 views
0

爲了搜索和生成基於相關性的結果列表,我在表格上設置了全文索引,我根據最高「分數」來自全文索引。SQL全文索引問題,「分數」未及時更新

該表包含3列,一個唯一的ID,類型(varchar)中的文本字段,第三個是最後一次編輯的時間戳。 全文索引僅查看TEXT(varchar)列。

我注意到,我的表中的數據更新和新的分數可通過重新執行相同的查詢之間似乎有一個延遲。

的過程會是如下: - 我在數分鐘有時小時的過程中更新的record- 老比分被替換爲較低的值 - (即使數據會更相關的)文本 我重新執行相同的查詢,並且每次得分緩慢增加,直到達到高於其以前得分的分數(這正是我想要的)。

我無法找到任何關於與此「延遲」相關的全文索引服務的內部工作信息。

在這一點上,任何幫助,提示,建議將是最受歡迎的,謝謝。

+0

而你正在使用什麼?甲骨文? MySQL? MS SQL Server?請假設人們可以閱讀你的想法;) – guigui42 2009-10-12 11:38:57

+0

啊我看到了,它的微軟SQL服務器2005年 – flaggers 2009-10-12 13:02:10

回答

1

羅伯特凱恩(www.arcanecode.com)在上週六在蓋恩斯維爾的SQL週六#25上演出了一場精彩的會議。他的演示鏈接:Full Text Searching

[羅伯特,如果你看到這個,我希望你不介意重新發布,但你已經清楚瞭解我如何看到全文搜索的工作原理。 ]

無論如何,從週末聽羅伯特的這個週末我的理解是,全文索引只會在服務器有一些備用資源時纔會更新。簡而言之,如果您的服務器遭受重創,這個優先級低於您的預期。

+0

優秀,一些非常好的信息在那裏謝謝。 – flaggers 2009-10-13 08:17:05