「搜索引擎選型」Solr vs. Elasticsearch:選擇開源搜索引擎

結合了雲,分析和認知搜索的觀察結果


Solr vs. Elasticsearch在我們的客戶項目和企業搜索社區中經常討論。但是,隨著傳統企業搜索已演變為Gartner所謂的“ Insight Engines”,我們重新討論了該主題,以提供結合了Cloud,Analytics和Cognitive Search功能的最新觀察結果,以幫助您評估Solr和Elasticsearch。

通常,當我們幫助客戶進行圍繞其企業解決方案中使用開源搜索引擎的評估時,會提出以下問題:“ Solr還是Elasticsearch,哪個更好?”雖然可能會有先入為主的觀念,這個問題比另一個要好,當被圈定為“哪個對我更好?”時,這個問題更相關。

可以使用多種搜索引擎技術,但是最受歡迎的開放源代碼變體是那些依賴於Apache Lucene底層核心功能的技術,從本質上講,這是使搜索引擎正常工作的部分。 Solr和Elasticsearch是搜索庫之上的組件,為完整的搜索產品提供了自己的實現和功能。 Lucene的核心功能為Solr和Elasticsearch的基本搜索功能提供了相同的體驗,但是圍繞Lucene的實現方法才是差異化的原因。

搜索引擎的作用已經從有效地查找信息轉變為在內容分析,預測建模以及與認知/智能搜索功能(例如自然語言處理(NLP),機器學習(ML)和相關性)的集成中發揮關鍵作用得分。我們已經在客戶工作中探索並實現了這些智能功能-在此處瞭解更多信息。

Solr vs. Elasticsearch:哪個對我的組織更好?


這得看情況。

關於採用一種技術而不是另一種技術有許多用例。但是當被問到這個問題時,我通常會從運營管理的角度來類比地回答:“ Solr就像Linux。您可以根據自己的需求進行大量自定義和定製Solr,但與Elasticsearch所需的工作相比,管理和部署要涉及更多的資源,而且要消耗大量資源。 Elasticsearch具有非常好的設計的用戶界面(Kibana),非常易於部署,管理和監視(使用X-Pack),該界面允許進行數據探索和創建分析可視化,但是自定義其功能是有限的,並且使用插件框架。

如果您願意,Elasticsearch可能適合您:

  • 使您的搜索引擎快速啟動並運行,而幾乎不會產生任何開銷;
  • 儘快開始探索您的數據;和
  • 將分析和可視化視為用例的核心組成部分。


如果您滿足以下條件,Solr可能適合您:

  • 需要大規模索引和重新處理大量數據;
  • 有可用的資源來投資於管理Solr和可用於交互的工具;和
  • 具有可與Solr配合使用的現有企業框架(例如其他Apache產品(例如Hadoop)或企業框架(例如Cloudera,Hortonworks或基於Hadoop的HDInsights))。


這並不是說Hadoop平臺無法與Elasticsearch配合使用(我們已向客戶提出了此方案),但是某些平臺(尤其是Cloudera和Hortonworks)提供了額外的工具和方法來對生態系統內的數據建立索引和管理Solr(尤其是即將發佈的支持Solr 7的Cloudera CDH 6版本。

觀察結果:性能,功能和用例


根據經驗,評估可以為幫助客戶定義策略和實施路線圖提供巨大的價值。在評估過程中,我們使用搜索引擎比較矩陣,根據特定客戶的優先級,採用加權評分機制,根據特定客戶的需求和用例評估搜索引擎的適用性。基於此分析,在為搜索引擎提出整體建議時,有一些共同的功能和用例可作為關注點。

「搜索引擎選型」Solr vs. Elasticsearch:選擇開源搜索引擎


「搜索引擎選型」Solr vs. Elasticsearch:選擇開源搜索引擎


「搜索引擎選型」Solr vs. Elasticsearch:選擇開源搜索引擎

在Solr和Elasticsearch之間選擇?考慮這些


決定哪種搜索引擎最適合您的特定用例和需求,不應基於“非此即彼”的假設。 Solr中特定功能的總體重要性可能超過Elasticsearch中的運營優勢,例如:

在一個客戶端的情況下,與Solr部署相關聯的開銷以及必須使用SolrNET的過期客戶端(當時)的開銷被Solr的可插入性所抵消。需要使用自定義加密更新和請求處理程序,才能使用旋轉數據加密密鑰對索引內容進行加密,從而需要在Elasticsearch上使用Solr。索引加密過程所需的功能無法在Elasticsearch中有效實現。

相反,在不考慮大數據或分析因素的情況下,針對一般搜索用例評估搜索引擎選項時,由於減少了維護和部署的開銷以及用於完全託管和託管環境的選項,Elasticsearch成為更受歡迎的選項。

在某些情況下,根據對客戶最重要的因素,儘管應用了計分規則,但尚不清楚哪個搜索引擎(包括商業引擎)最能滿足客戶的需求。在這種情況下,可以使用樣本數據集進行“烘焙”,以評估每個引擎在一組特定用例中的表現,從而對客戶進行評估。

歸根結底,Solr和Elasticsearch都是強大,靈活,可擴展且功能強大的開源搜索引擎。總體用例和業務需求,以及所需的功能,操作注意事項以及與新的認知搜索和分析功能的集成,最終將決定您選擇Solr還是Elasticsearch。

原文:https://www.accenture.com/us-en/blogs/search-and-content-analytics-blog/solr-elasticsearch-open-source-search-engines

本文:http://jiagoushi.pro/node/906

討論:請加入知識星球或者微信圈子【首席架構師圈】


分享到:


相關文章: