我已經完成索引時間獅身人面像的基準測試& Solr。與Solr相比,Sphinx在索引算法(超快索引時間和小索引大小)方面遙遙領先。
當你說10頁的文字,它似乎你甚至不需要實時獅身人面像索引。您可以按照Sphinx中的主要+增量索引方案(您可以在Sphinx文檔中找到)。這將是超快和接近實時的。如果您需要更多幫助,請隨時詢問,很高興向您解釋。
Solr是偉大的,但談到優化算法獅身人面像岩石!嘗試獅身人面像。
在評論中提到您的問題,Solr/Lucene支持增量索引(在他們的術語中稱爲delta導入),其安靜易於配置,但與Sphinx使用的方法相比,它們相當慢。
Main + Delta很快就夠了,因爲你可以做的就是創建一個臨時表存儲你的新文本並索引它。根據文檔:Sphinx支持「實時」(幾乎實時)索引更新,並且可以使用所謂的「主+增量」方案來實現。這個想法是設置兩個來源和兩個索引,其中一個爲數據的「主要」索引,另一個爲新文檔的「增量」。
舉個例子,你有1000萬條記錄,所以你可以保留它作爲主索引,並且所有新文檔都被添加到一個新的表中,這個表將作爲三角洲。這個新表格可以不時索引(比如說每1小時),並且數據可以在幾秒鐘內搜索到,因爲您有10頁文本。現在,在您搜索到新記錄後,您可以合併主表+ delta表格的文檔,這可以在不干擾搜索的情況下執行。合併文檔時,清空新表並在一小時後再次執行整個過程。我希望你有其他問題,請隨時提出任何問題。
謝謝你的幫助。從我讀的主+三角洲正是我所需要的。但是有一點在文檔中不明確;他們說它將把索引時間縮短到30到60秒。就我而言,在幾秒鐘內(最多一分鐘)準備好可以搜索新文本是非常重要的。主+三角洲足夠快嗎?從我看到的獅身人面像就是這樣。 – applechief
非常歡迎。你可以在上面看到我編輯的答案。主+三角洲應該爲你工作,因爲獅身人面像索引真的很快。但還有一件事:請看上面答案中提到的獅身人面像中的實時索引,我從來沒有用過它,但看起來很有希望。將兩者都應用於數據後,您可以查看哪些最適合您。 – Yavar