一、介绍

1、ES

  Elasticsearch是用Java开发并且是当前最流行的开源的企业级搜索引擎,支持多种语言

2、Lucene

Lucene可以被认为是迄今为止最先进、性能最好的、功能最全的搜索引擎库(框 架),

  但是想要使用Lucene,必须使用Java来作为开发语言并将其直接集成到你的应用中

3、Solr

  Solr 是Apache下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文搜索服务。

  Solr提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展,并对索引、搜索性能进行了优化。

  Solr可以独立运行在Jetty、Tomcat等这些Servlet容器中

二、对比

ES与Lucene的区别

Lucene,必须使用Java来作为开发语言并将其直接集成到你的应用中,并且Lucene的配置及使用非常复杂,你需要深入了解检索的相关知识来理解它 是如何工作的。lucene有很多缺陷,es并不存在。

  • 只能在Java项目中使用,并且要以jar包的方式直接集成项目中
  • 使用非常复杂-创建索引和搜索索引代码繁杂
  • 不支持集群环境-索引数据不同步(不支持大型项目)
  • 索引数据如果太多就不行,索引库和应用所在同一个服务器,共同占用硬 盘.共用空间少.

ES与Solr对比

  • 单纯对已有数据进行搜索时,solr更快;但是实时简历索引时,solr会产生io阻塞,查询性能较差。而es不会
  • solr利用zk进行分布式管理,而es自身带有分布式协调管理功能。
  • solr支持更多的数据格式,如json、xml、csv等,而es仅支持json文件格式
  • solr在传统的搜索应用中表现好于es,但在处理实时搜索应用时效率明显低于es。

Solr与Lucene对比

  Lucene是一个开放源代码的全文检索引擎工具包,它不是一个完整的全文检索引擎,Lucene提供了完整的查询引擎和索引引擎,目的是为软件开发人员提供一个简单易用的工具包,以方便的在目标系统中实现全文检索的功能,或者以Lucene为基础构建全文检索引擎。

  Solr的目标是打造一款企业级的搜索引擎系统,它是一个搜索引擎服务,可以独立运行,通过Solr可以非常快速的构建企业的搜索引擎,通过Solr也可以高效的完成站内搜索功能。

最新文章

  1. http请求相关
  2. UML图例
  3. 一些有用的HTML5 pattern属性
  4. 关于JS中apply方法的基本理解
  5. Hadoop HDFS编程 API入门系列之路径过滤上传多个文件到HDFS(二)
  6. python urllib2使用心得
  7. 【UVa-679】小球下落——二叉树的编号
  8. 问题-Delphi不能进行调试模式
  9. vs2008打包公布程序
  10. 【CF932G】Palindrome Partition(回文树,动态规划)
  11. 玩转spring boot——结合docker
  12. python3安装pip3的方法
  13. REP开发技巧
  14. Hadoop概念学习系列之Java调用Shell命令和脚本,致力于hadoop/spark集群(三十六)
  15. Matlab实现BP网络识别字母
  16. Office2013 如何安装Matlab notebook
  17. Python: ord()函数
  18. vue 表单 验证 async-validator
  19. Oracle SQl优化总结
  20. Subnetting

热门文章

  1. 浅谈Pytest中的marker
  2. 线程基础知识11-CAS+自旋锁
  3. mysql03-默认的几个数据库
  4. 2022.2.1最新版本的IDEA
  5. 《价值流动-Project To Product》读后感
  6. 使用Hook拦截sendto函数解决虚拟局域网部分游戏联机找不到房间的问题——以文明6为例
  7. Spring(IOC实际开发使用、底层原理)
  8. Excel操作技巧
  9. 网页实时显示已经运行了多少天 html+js
  10. 使用 UnoCSS shortcuts 简化 class