Solr与ElasticSearch对比
我的Elasticsearch系列文章,逐渐更新中,欢迎关注
0A.关于Elasticsearch及实例应用
00.Solr与ElasticSearch对比
01.ElasticSearch能做什么?
02.Elastic Stack功能介绍
03.如何安装与设置Elasticsearch API
04.如果通过elasticsearch的head插件建立索引_CRUD操作
05.Elasticsearch多个实例和head plugin使用介绍
网上有很多Apache Solr和ElasticSearch之间的比较,我来写写我的看法。
- Solr可能是构建标准搜索应用时的首选武器,但Elasticsearch将其提升到了一个新的层次,它的架构可以创建现代实时搜索应用。
- Percolation是一个令人兴奋的创新功能,这个功能能轻松打败Solr。
- Elasticsearch具有可扩展性、速度快,并且是一个集成。Adios Solr,很高兴认识你。
维基百科上关于ElasticSearch的文章引用了德国著名的iX杂志的比较,列举了优缺点,基本概括了上面已经说过的内容。
优势
- ElasticSearch是分布式的。不需要单独的项目。复制也是近实时的,也就是所谓的 “推送复制”。
- ElasticSearch完全支持Apache Lucene的近实时搜索。
- 处理multitenancy不是一个特殊的配置,在Solr中需要更高级的设置。
- 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进行比较可能是最有用的,因为两者都声称在原理上涵盖了相同的用例。