我們正在使用Ruby on Rails實施產品評論網站。如何實現Ruby on Rails網站的搜索層?
搜索是用戶體驗的核心組件。我們需要快速且相關地進行搜索。
我們應該使用Lucene還是其他開源搜索層?我們是否應該僅針對我們的網站使用Google的搜索API和索引?或者我們應該開發專有的搜索功能?
謝謝!
我們正在使用Ruby on Rails實施產品評論網站。如何實現Ruby on Rails網站的搜索層?
搜索是用戶體驗的核心組件。我們需要快速且相關地進行搜索。
我們應該使用Lucene還是其他開源搜索層?我們是否應該僅針對我們的網站使用Google的搜索API和索引?或者我們應該開發專有的搜索功能?
謝謝!
我個人很喜歡獅身人面像+ UltraSphinx,但我敢肯定也有,誰知道像Lucene的或XXX的人的數量不變。我擔心這取決於您的問題中沒有包含的信息。你在尋找什麼?它有任何形式的分類嗎?用戶將搜索什麼條款?
Ultrasphinx +獅身人面像大約需要10分鐘才能運行,所以我建議你給它一個裂縫,看看你的身體情況如何。
看看Solr。這是用Lucene驅動的搜索服務器啓動和運行的最快方式。它將爲索引時的文檔預處理提供額外的功能,如分面和管道。
的Solr還提供了很大的空間尺度爲您的網站同時通過分片&複製的增長。
似乎有充足的綁定紅寶石(我更多的是PHP的傢伙,所以我可以在他們的用處評論)。 Solr公開了您可以輕鬆利用的豐富的REST API。
一件事要使用Solr認真考慮的是如何處理的搜索索引更新。批量與近實時索引更新可能會影響您的策略。您需要提前在這方面定義應用程序的需求。
只需添加到重建索引,文檔這樣說:「如果你正在使用Rails,對象是自動索引到Solr作爲保存回調的一部分。如果你改變對象的‘模式’(在搜索代碼塊),您必須重新索引所有對象,以便更改反映在Solr中:...「 – James 2012-09-16 19:46:44