2017-05-24 87 views
0

我希望開發一個搜索功能,如谷歌爲我的網站與自動完成。情景是低於使用建議自動完成搜索的最佳選擇?

  • 用戶可以輸入關鍵字拼寫錯誤,並得到正確的建議僅適用於我們的網站項目
  • 如果他們輸入一個字
  • 必須能夠輸入用戶必須提供自動建議關鍵字和培訓的建議

一些研究之後的模型,我發現下面的產品都能夠做這樣的任務的

  • Apache Solr實現
  • Elasticsearch

有人可以對這兩個服務的解釋,並告訴我可以用最少的開發工作和最高的效率來發展?如果有任何其他產品符合以上提及的情況,請告訴我。

回答

0

Elasticsearch以建議者(https://www.elastic.co/guide/en/elasticsearch/reference/current/search-suggesters.html)的形式提供這些功能。

  • 術語提示器能夠通過編輯距離建議其他術語。這意味着它可以「修復」錯別字。
  • 短語提示更復雜,但本質上表明'固定'的短語。
  • 完成建議器基本上用於自動完成。

它們都依賴於它們的索引數據。基本上你可以索引這些建議者可以使用的真正/正確的搜索短語。很酷的是,當你爲這些索引添加新的搜索詞組時,'模型'會自動更新。這意味着您可以隨着時間的推移擴展功能

不幸的是,我還沒有使用這些,所以我不能給你建議/提示如何做到這一點。嘗試參考文檔 - 通常相當不錯。但是,如果您還不瞭解Elasticsearch,那麼我想這個任務可能有點困難。所以你可能想閱讀'入門'。

至於Solr:我不知道你會怎麼做。我只知道它使用了相同的底層文本搜索引擎 - Apache Lucene。所以我希望它們在功能上差別不大。