9个基于Java的搜索引擎框架
在这个信息相当复杂的互联时期,我们已学会了如何利用搜索引擎这个强大的利器来找寻目标信息,比如你会在Google上搜索情人节如何讨女朋友欢心,你也会在百度上寻觅正规的整容医疗机构(虽然有很大一部分广告骗子)。那末如果在你自己开发的站系统中需要能让用户搜索一些重要的信息,并且能以结构化的结果展现给用户,下面分享的这9款Java搜索引擎框架也许就可以帮助到你了。
1、Java全文搜索引擎框架Lucene
毫无疑问,Lucene是目前最受欢迎的Java全文搜索框架,准确地说,它是一个全文检索引擎的架构,提供了完全的查询引擎和索引引擎,部份文本分析引擎。Lucene为开发人员提供了相当完全的工具包,可以非常方便地实现强大的全文检索功能。下面有几款搜索引擎框架也是基于Lucene实现的。
官方站:
2、开源Java搜索引擎Nutch
Nutch是一个开源Java实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。包括全文搜索和Web爬虫。
利用Nutch,你可以做到以下这些功能:
每一个月取几十亿页
为这些页保护一个索引
对索引文件进行每秒上千次的搜索
提供高质量的搜索结果
以最小的本钱运作
官方站:
3、分布式搜索引擎ElasticSearch
ElasticSearch就是一款基于Lucene框架的分布式搜索引擎,并且也是一款为数不多的基于JSON进行索引的搜索引擎。ElasticSearch特别合适在云计算平台上使用。
官方站:
4、实时分布式搜索引擎Solandra
Solandra是一个实时的分布式搜索引擎,基于ApacheSolr和ApacheCassandra构建。
其特性以下:
支持Solr的大多数默许特性(search,faceting,highlights)
数据复制,分片,缓存及紧缩这些都由Cassandra来进行
Multi-master(任意结点都可供读写)
实时性高,写操作完成便可读到
EasilyaddnewSolrCoresw/orestartacrossthecluster轻松添加及重启结点
官方站:
5、IndexTank
IndexTank是一套基于Java的索引-实时全文搜索引擎实现,IndexTank有以下几个特点:
索引更新实时生效
地理位置搜索
支持多种客户端语言
Ruby,Rails,Python,Java,PHP,.NETmore!
支持灵活的排序与评分控制
支持自动完成
支持面搜索(facetsearch)
支持匹配高亮
支持海量数据扩大(Scalablefromapersonalblogtohundredsofmillionsofdocuments!)
支持动态数据
官方站:
6、搜索引擎Compass
Compass是一个强大的,事务的,高性能的对象/搜索引擎映照(OSEM:object/searchenginemapping)与一个Java持久层框架.Compass包括:
搜索引擎抽象层(使用Lucene搜索引荐)
OSEM(Object/SearchEngineMapping)支持
事务管理
类似于Google的简单关键字查询语言
可扩大与模块化的框架
简单的API
官方站:
7、Java全文搜索服务器Solr
Solr也是基于Java实现的,并且是基于Lucene实现的,Solr的主要特性包括:高效、灵活的缓存功能,垂直搜索功能,高亮显示搜索结果。值得注意的是,Solr还提供一款很棒的Web界面来管理索引的数据。
官方站:
8、Lucene图片搜索LIRE
LIRE是一款基于Java的图片搜索框架,其核心也是基于Lucene的,利用该索引就能够构建一个基于内容的图象检索(content-basedimageretrieval,CBIR)系统,来搜索类似的图象。
官方站:
北京去哪家医院看白癜风北京白癜风医治的医院在哪里热点文章
最近更新