2011-11-22 51 views
0

我正在構建一個數據庫,我不確定是否需要任何特殊的索引工具,或者只是mysql索引就足夠了。搜索1000條包含300.000字的文章

在我的數據庫中,我將有大約1000篇文章,每篇包含約300個單詞。我需要搜索包含我的查詢中大部分單詞的文章(例如:「走路,走路,上學,學習」 - 我希望找到包含這些單詞的文章最多次)。

該文章將HTML。

該應用程序將被少數人(10)一次使用=對超快響應沒有額外要求,我只是希望它在合理的時間內返回,如1秒。

那麼,我是否需要任何額外的索引工具(Apache Lucene/SOLR)或將MySQL索引做?

回答

1

我不能說我是一個MySql專家,因爲我處理更多的TSQL。不過,我只是說,只要搜索文章可能需要一段時間,如果他們也包含HTML,因爲您必須考慮可能會或可能不會變形的標記,具體取決於HTML的保存方式。

個人在文章表中我會有一個額外的列,其中將包含文章的純文本版本或某種加權算法的結果,這些算法會在文章中輸入最常用的30個單詞,以便你有一個更整潔和簡化的搜索字段使用。

但是,對於1000篇文章,這看起來非常過分,MySQL應該做得很好,如果你以後所有的迴應時間都是<。

+0

你覺得那麼簡單的搜索就足夠快了嗎? – myro

+1

是的,我認爲是。你只需要看你如何搜索。如果你通過比較搜索短語的每個單詞來做到這一點,你應該沒問題。但是,如果您開始尋找像「今天通過的政府帳單」這樣的搜索字詞,html可能類似 政府
今天通過的帳單 可能不匹配 – Chris