为什么我们项目用Solr而不用ElasticSearch

文章最前: 我是Octopus,这个名字来源于我的中文名--章鱼;我热爱编程、热爱算法、热爱开源。所有源码在我的个人github ;这博客是记录我学习的点点滴滴,如果您对 Python、Java、AI、算法有兴趣,可以关注我的动态,一起学习,共同进步。

相关文章:

  1. LeetCode:55. Jump Game(跳远比赛)
  2. Leetcode:300. Longest Increasing Subsequence(最大增长序列)
  3. LeetCode:560. Subarray Sum Equals K(找出数组中连续子串和等于k)

文章目录:

Solr优缺点:

优点:

缺点:

Elasticsearch优缺点:

优点:

缺点:

Elasticsearch 与 Solr 的比较总结:

优缺点比较:


首先,先说一下solr的优缺点和elasticSearch 的优缺点;

Solr优缺点:


优点:

  1. Solr有一个更大、更成熟的用户、开发和贡献者社区。
  2. 支持添加多种格式的索引,如:HTML、PDF、微软 Office 系列软件格式以及 JSON、XML、CSV 等纯文本格式。
  3. Solr比较成熟、稳定。
  4. 不考虑建索引的同时进行搜索,速度更快。

缺点:

  1. 建立索引时,搜索效率下降,实时索引搜索效率不高。

Elasticsearch优缺点:


优点:

  1. Elasticsearch是分布式的。不需要其他组件,分发是实时的,被叫做”Push replication”。
  2. Elasticsearch 完全支持 Apache Lucene 的接近实时的搜索。
  3. 处理多租户不需要特殊配置,而Solr则需要更多的高级设置。
  4. Elasticsearch 采用 Gateway 的概念,使得完备份更加简单。
  5. 各节点组成对等的网络结构,某些节点出现故障时会自动分配其他节点代替其进行工作。

缺点:

  1. 只有一名开发者(当前Elasticsearch GitHub组织已经不只如此,已经有了相当活跃的维护者)

     2. 还不够自动(不适合当前新的Index Warmup API)


Elasticsearch 与 Solr 的比较总结:

    1.Solr 利用 Zookeeper 进行分布式管理,而 Elasticsearch 自身带有分布式协调管理功能;

    2.Solr 是传统搜索应用的有力解决方案,但 Elasticsearch 更适用于新兴的实时搜索应用。

    3.Solr 支持更多格式的数据,而 Elasticsearch 仅支持json文件格式;

    4.Solr 官方提供的功能更多,而 Elasticsearch 本身更注重于核心功能,高级功能多有第三方插件提供;

    5.Solr 在传统的搜索应用中表现好于 Elasticsearch,但在处理实时搜索应用时效率明显低于 Elasticsearch。


选择solr理由:

1.我们的项目中dubbox要用到zookeeper作为注册中心,刚好可以利用zookeeper来协调Solr集群;

2.如果不在实时插入查询,solr搜索引擎的暂时可以满足搜索的速度需求;

3.项目后期升级要朝着hadoop这块发展,当数据量大的时候,用hadoop处理数据,而solr可以很简便的与hadoop结合。由于Hadoop处理大量数据,Solr帮助我们从这么大的源中找到所需的信息;不仅限于搜索,Solr也可以用于存储目的;

4.还有最后一个原因,solr有一个成熟的社区,我们在开发中遇到的问题 ,可以向社区求助,以便使我们更快的解决问题;

  • 9
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值