ElasticSearch和solr的对比

关于ES:ElasticSearch是一个事实分布式搜索和分析引擎,使用其可以以前所未有的速度处理大数据,他用于全文搜索、结构化搜索、分析以及将这三者混合使用。*使用ElasticSearch提供全文搜索并高亮关键字,以及输入实时搜索(search+asyou+type)等搜索纠错(did+you+mean)等搜索建议功能。ElasticSearch是一个基于Apache Lucene(TM)的开源搜索引擎。无论在开源还是在专有领域,Lucene可以被认为是迄今最先进、性能最好的、功能最全的搜索引擎库。

关于Solr:solr是Apache下的一个*开源项目,采用java开发,它是基于Lucene的全文搜索服务器。solr提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展、并对索引、搜索性能进行了优化。solr可以独立运行,运行在Jetty、Tomcat等这些Servlet容器中,solr索引是实现方法很简单,用post方法向solr服务器发送一个描述Field及其内容的xml文档,solr根据xml文档添加、删除、更新索引。

二者之间对比:

相同点:

都是基于Lucene,都是对Lucene的封装

不同点:

        使用                          Solr安装略微复杂一些,es基本的开箱急用,非常简单

        接口                          Solr类似webservice的接口;es是基于restful风格的访问接口

       分布式储存                solrCloud  solr4.x才支持   es是为分布式而生的

       支持的格式                solr支持更多的格式数据,比如Json、xml、CSV;es仅支持json文件格式

      近实时搜索的角度      Solr查询快,但更新索引时慢(即插入删除慢),用于电商等查询多的应用;ES建立索引快(即查询慢),                                           即实时性查询快,用于facebook新浪等搜索。solr是传统的搜索应用的有力的解决方案,但是                                                         ElasticSearch更适合用于新兴的实时搜索应用

百度指数(Baidu Index):是以百度海量网民行为数据为基础的数据分析平台,是当前互联网乃至整个数据时代最重要的统计分析平台之一,自发布之日便成为众多企业营销决策的重要依据。

百度指数是以百度海量网民行为数据为基础的数据分享平台。在这里,你可以研究关键词搜索趋势、洞察网民需求变化、监测媒体舆情趋势、定位数字消费者特征;还可以从行业的角度,分析市场特点。

ElasticSearch和solr的对比