当前位置:首页 > 娱乐

lucene 开源搜索引擎Lucene、Solr、Sphinx等优劣势比较

开源搜索引擎分类

1.Lucene是java开发的搜索引擎,包括:

LuceneSolrElasticsearchKatta、Compass等都是基于Lucene封装。

你可以想象Lucene有多厉害。

2.Sphinx搜索引擎,c++开发,简单高效。

以下重点介绍最常用的开源搜索引擎:Lucene、Solr、Elasticsearch、Sphinx。

全文搜索引擎

1.1简介。全文搜索引擎

Lucene的开发语言是Java,也是Java家族中最著名的开源搜索引擎。已经是Java世界的标准全文搜索程序了。它提供了完整的查询引擎和索引引擎,没有中文分词引擎,需要自己实现。所以需要用Lucene搭建搜索引擎,不支持实时搜索。但是solr和elasticsearch是基于Lucene封装的。

2.2的优缺点。全文搜索引擎

优点:

成熟的解决方案,有很多成功的案例。Apache的顶级项目正在取得持续快速的进展。拥有大量开发人员的大型活跃开发社区。只是一个有足够定制和优化的类库空:简单定制后,就能满足最常见的需求;优化后可以支持10亿+搜索。

缺点:

需要额外的开发工作。所有扩展、分布、可靠性等。需要自己去实现;非实时性,从索引到搜索存在时间延迟,当前“Lucene近实时搜索”搜索方案的可扩展性有待进一步提高

Apache Solr

1.1简介。线迭代

Solr是一款高性能的全文搜索服务器,由Java开发,基于Lucene。

使用XML通过Http将文档添加到搜索集中。

查询集合也是通过http接收一个XML/JSON响应来实现的。它的主要特点包括:高效灵活的缓存功能、垂直搜索功能、突出搜索结果、通过索引复制提高可用性、提供一套强大的数据模式来定义字段、类型和设置文本分析、提供基于网络的管理界面等。

2.2的优缺点。使用

优势

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

劣势

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

弹性搜索

1.1简介。弹性搜索

弹性搜索是一个基于Lucene的开源、分布式、RESTful的搜索引擎。专为云计算设计,可以实现实时搜索,稳定可靠,安装使用快捷方便。支持JSON通过HTTP进行数据索引。

2.2的优缺点。弹性搜索

优势

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

劣势

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

弹性研究与Solr的比较综述

二者安装都很简单;Solr 利用 Zookeeper 进行分布式管理,而 Elasticsearch 自身带有分布式协调管理功能;Solr 支持更多格式的数据,而 Elasticsearch 仅支持json文件格式;Solr 官方提供的功能更多,而 Elasticsearch 本身更注重于核心功能,高级功能多有第三方插件提供;Solr 在传统的搜索应用中表现好于 Elasticsearch,但在处理实时搜索应用时效率明显低于 Elasticsearch。

总之,Solr是传统搜索应用的强大解决方案,而Elasticsearch更适合新兴的实时搜索应用。

斯芬克司

1.1简介。斯芬克司

Sphinx是一个基于SQL的全文搜索引擎,专门为一些脚本语言(PHP、Python、Perl、Ruby)设计搜索API接口。

Sphinx是用C++语言编写的开源搜索引擎,也是目前主流的搜索引擎之一。在索引事件上比lucene快50%,但是索引文件是Lucene的两倍大。所以Sphinx是索引中空之间交换事件的策略,在检索速度上类似于Lucene。而Lucene在检索准确率上优于Sphinx,在加入中文分词引擎的难度上优于Sphinx,其中Sphinx支持实时搜索,相对简单,使用方便。

Sphinx可以很容易地与SQL数据库和脚本语言集成。目前系统内置了对MySQL和PostgreSQL数据库数据源的支持,也支持从标准输入中读取特定格式的XML数据。通过修改源代码,用户可以自己添加新的数据源(例如,其他类型的数据库管理系统的本地支持)

2.特点2。斯芬克司

高速的建立索引(在当代CPU上,峰值性能可达到10 MB/秒);高性能的搜索(在2 – 4GB 的文本数据上,平均每次检索响应时间小于0.1秒);可处理海量数据(目前已知可以处理超过100 GB的文本数据, 在单一CPU的系统上可 处理100 M 文档);提供了优秀的相关度算法,基于短语相似度和统计(BM25)的复合Ranking方法;支持分布式搜索;支持短语搜索提供文档摘要生成可作为MySQL的存储引擎提供搜索服务;支持布尔、短语、词语相似度等多种检索模式;文档支持多个全文检索字段(最大不超过32个);文档支持多个额外的属性信息(例如:分组信息,时间戳等);支持断词;PS:关注360linker公众号,加入官方社区获取免费视频教程、知名单位招聘信息。交流分享IT圈学习经验。

1.《lucene 开源搜索引擎Lucene、Solr、Sphinx等优劣势比较》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。

2.《lucene 开源搜索引擎Lucene、Solr、Sphinx等优劣势比较》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。

3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/yule/887002.html

上一篇

杨先杰个人资料简介 杨先杰人物简历

下一篇

杨先材个人资料简介 杨先材人物简历

怎么查询高速是否封路 雾天高速有没有封路?点这里实时查看收费站道口开关情况!

  • 怎么查询高速是否封路 雾天高速有没有封路?点这里实时查看收费站道口开关情况!
  • 怎么查询高速是否封路 雾天高速有没有封路?点这里实时查看收费站道口开关情况!
  • 怎么查询高速是否封路 雾天高速有没有封路?点这里实时查看收费站道口开关情况!

怎么知道高速是否封路 雾天高速有没有封路?点这里实时查看收费站道口开关情况!

  • 怎么知道高速是否封路 雾天高速有没有封路?点这里实时查看收费站道口开关情况!
  • 怎么知道高速是否封路 雾天高速有没有封路?点这里实时查看收费站道口开关情况!
  • 怎么知道高速是否封路 雾天高速有没有封路?点这里实时查看收费站道口开关情况!

如何查询高速是否封路 雾天高速有没有封路?点这里实时查看收费站道口开关情况!

  • 如何查询高速是否封路 雾天高速有没有封路?点这里实时查看收费站道口开关情况!
  • 如何查询高速是否封路 雾天高速有没有封路?点这里实时查看收费站道口开关情况!
  • 如何查询高速是否封路 雾天高速有没有封路?点这里实时查看收费站道口开关情况!

苹果手机对战游戏 双卡双待、多人对战AR游戏、实时渲染芯片,苹果发布会的重点其实是……

实时票房猫眼预测 谁才是票房的最大黑马?机器学习在票房预估中的实战

近年来,中国票房市场成倍增长,2011年达到近150亿,2016年达到450亿,预计2020年前后将达到1000亿。 但这个市场规模只有美国市场的一半左右,因为中国电影的主要收入来源于票房本身,而美国电影衍生品的收入高达电影相关行业总收入的70%,而中国在这方面几乎空白。所以,中国电影市场未...

李振老师:打造实时在线交流平台

李振老师:打造实时在线交流平台

  李振老师祖籍杭州,李振老师毕业于伦敦政治经济学院,李振老师还自创了《凡人操盘理论》李振老师有丰富的投资经验。  自从股票软件已成股民们的必备兵器,同花顺、大智慧、...

北京搜索引擎优化 搜索引擎优化算法 SEO算法变化与对策

北京搜索引擎优化 搜索引擎优化算法 SEO算法变化与对策

1.搜索引擎的算法经历了以下四大变化: 1.手动目录 SEO算法变化和对策主要是在2001年以前的雅虎模式下使用的,当时SEO很简单,只要巧妙的把提交申请时的数据写出来,就可以获得更好的排名。 2.文本分析 SEO算法变化及对策2003年以前,虽然谷歌和百度此时有链接分析技术,但他们的算法主...

中方通知美方关闭驻成都总领馆后,央视对这里实时直播

  • 中方通知美方关闭驻成都总领馆后,央视对这里实时直播
  • 中方通知美方关闭驻成都总领馆后,央视对这里实时直播
  • 中方通知美方关闭驻成都总领馆后,央视对这里实时直播