Elasticsearch和Solr的区别

Elasticsearch简称ES

背景:它们都是基于lucene搜索服务器基础之上开发的一款优秀的、高性能的企业级搜索服务器

高性能:是因为它们都是基于分词技术构建“倒排索引”的方式进行查询

倒排索引:也称反向索引,倒排表以字或词进行索引

引用:https://www.cnblogs.com/zlslch/p/6747850.html

开发语言:Java

诞生时间:

  solr:2004年诞生

  ES:2010年诞生

  ES最新,功能越强大

区别:

  1. 当实时建立索引的时候,Solr会产生IO阻塞,而ES则不会,ES的查询性能要高于Solr
  2. 在不断动态添加数据的时候,Solr的检索效率会变得地下,而ES则没有什么变化
  3. Solr利用Zookeeper进行分布式管理,而ES自身带有分布式系统管理功能。Solr一般都要部署到web服务器上,比如tomcat。启动tomcat的时候需要配置tomcat与Solr的关联
    • Solr的本质是一个动态web项目
  4. Solr支持更多的格式数据【xml、json、csv等】,而ES仅支持json文件格式
  5. Sort传统搜索应用的有利解决方案,但是ES更适用于新兴的实时搜索应用
    • 单纯的对已有数据进行检索的时候,Solr检索更好,高于ES
  6. Solr官网提供的功能更多,而ES本身更注重于核心功能,高级功能多有第三方插件

SolrCloud:集群图

ES集群

 

原文地址:https://www.cnblogs.com/chai-blogs/p/12635142.html