網上有不少Apache Solr和ElasticSearch之間的比較,我來寫寫個人見解。ios
維基百科上關於ElasticSearch的文章引用了德國著名的iX雜誌的比較,列舉了優缺點,基本歸納了上面已經說過的內容。後端
優點緩存
劣勢服務器
總結
它們是徹底不一樣的技術,解決的是徹底不一樣的用例,所以不能進行任何有意義的比較。架構
關於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進行比較多是最有用的,由於二者都聲稱在原理上涵蓋了相同的用例。