Solr与ElasticSearch对比

网上有很多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进行比较可能是最有用的,因为两者都声称在原理上涵盖了相同的用例。

你可能感兴趣的:(elasticsearch,elastic-search,搜索引擎)