Solr與ElasticSearch對比

網上有不少Apache Solr和ElasticSearch之間的比較,我來寫寫個人見解。ios

  • Solr多是構建標準搜索應用時的首選武器,但Elasticsearch將其提高到了一個新的層次,它的架構能夠建立現代實時搜索應用。
  • Percolation是一個使人興奮的創新功能,這個功能能輕鬆戰勝Solr。
  • Elasticsearch具備可擴展性、速度快,而且是一個集成。Adios Solr,很高興認識你。

維基百科上關於ElasticSearch的文章引用了德國著名的iX雜誌的比較,列舉了優缺點,基本歸納了上面已經說過的內容。後端

優點緩存

  • ElasticSearch是分佈式的。不須要單獨的項目。複製也是近實時的,也就是所謂的 "推送複製"。
  • ElasticSearch徹底支持Apache Lucene的近實時搜索。
  • 處理multitenancy不是一個特殊的配置,在Solr中須要更高級的設置。
  • ElasticSearch引入了網關的概念,這使得徹底備份變得更加容易。

劣勢服務器

  • 只有一個主開發者
  • 沒有自動升溫功能

總結
它們是徹底不一樣的技術,解決的是徹底不一樣的用例,所以不能進行任何有意義的比較。架構

關於ElasticSearch的部署教程,推薦你們看這篇文章:elasticsearch初學終極教程: 從零到一elasticsearch

Apache Solr - Apache Solr提供了Lucene的功能,在一個簡單易用、快速的搜索服務器中提供了Lucene的功能,並具備額外的功能,如分面、可擴展性等。分佈式

Amazon ElastiCache - Amazon ElastiCache 是一種 Web 服務,可輕鬆部署、操做和擴展雲中的內存內緩存。工具

請注意,Amazon ElastiCache 是與 Memcached 協議兼容的,Memcached 是一種被普遍採用的內存對象緩存系統,所以您如今使用現有 Memcached 環境的代碼、應用程序和流行的工具都將與該服務無縫地配合使用搜索引擎

也許你們已經把它和下面兩個相關的技術混淆了,下面咱們來看看這兩個相關的技術。對象

ElasticSearch---它是一個基於Apache Lucene之上構建的開源(Apache 2)、分佈式、RESTful、搜索引擎。

Amazon CloudSearch---亞馬遜雲搜索(Amazon CloudSearch)是一個徹底管理的雲端搜索服務,可讓客戶輕鬆地將快速、高擴展性的搜索功能集成到他們的應用中。

Solr和ElasticSearch的產品乍聽起來很是類似,都使用了相同的後端搜索引擎,即Apache Lucene。

Solr比較老,功能至關豐富,也至關成熟,所以被普遍使用,而ElasticSearch則是專門爲解決Solr的不足之處而開發的,在現代雲環境下的可擴展性要求,而這些都是Solr難以解決的。

所以,將ElasticSearch與最近推出的Amazon CloudSearch進行比較多是最有用的,由於二者都聲稱在原理上涵蓋了相同的用例。

相關文章
相關標籤/搜索