网上有不少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进行比较多是最有用的,由于二者都声称在原理上涵盖了相同的用例。