Solar学习(一)—————>>>>>>>>>>>solr的最简单的了解

来源:互联网 发布:sklearn tensorflow 编辑:程序博客网 时间:2024/06/05 16:50
1、概念
一个基于lucene的企业级搜索引擎,通俗的讲就是一个搜多引擎。(solr需要运行在一个servlet 容器里)
普及------>>>>>lucene的介绍:
Lucene是apache软件基金会发布的一个开放源代码的全文检索引擎工具包,由资深全文索引/检索专家Doug Cutting所撰写。它是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,以及部分文本分析引擎。Lucene的目的是为软件开发人员提供一个简单易用的工具包,以方便在目标系统中实现全文检索的功能,或者是以此为基础建立起完整的全文检索引擎。


2、solr和lucene的区别
Solr与Lucene 并不是竞争对立关系,恰恰相反Solr 依存于Lucene,因为Solr底层的核心技术是使用Lucene 来实现的,Solr和Lucene的本质区别有以下三点:搜索服务器,企业级和管理。Lucene本质上是搜索库,不是独立的应用程序,而Solr是。Lucene专注于搜索底层的建设,而Solr专注于企业应用。Lucene不负责支撑搜索服务所必须的管理,而Solr负责。所以说,一句话概括 Solr: Solr是Lucene面向企业搜索应用的扩展。


3、solr相对lucene的优点
一个真正的拥有动态字段(Dynamic Field)和唯一键(Unique Key)的数据模式(Data Schema)
对Lucene查询语言的强大扩展!
支持对结果进行动态的分组和过滤
高级的,可配置的文本分析
高度可配置和可扩展的缓存机制
性能优化
支持通过XML进行外部配置
拥有一个管理界面
可监控的日志
支持高速增量式更新(Fast incremental Updates)和快照发布(Snapshot Distribution)


4、solr原理
Solr对外提供标准的http接口来实现对数据的索引的添加、删除、改动、查询。在 Solr 中,用户通过向部署在servlet 容器中的 Solr Web 应用程序发送 HTTP 请求来启动索引和搜索。Solr 接受请求,确定要使用的适当SolrRequestHandler,然后处理请求。通过 HTTP 以相同的方式返回响应。默认配置返回Solr 的标准 XML 响应,也能够配置Solr 的备用响应格式。


能够向 Solr 索引 servlet 传递四个不同的索引请求:
add/update 同意向 Solr 加入文档或更新文档。直到提交后才干搜索到这些加入和更新。
commit 告诉 Solr,应该使上次提交以来所做的全部更改都能够搜索到。
optimize 重构 Lucene 的文件以改进搜索性能。索引完毕后执行一下优化通常比較好。假设更新比較频繁,则应该在使用率较低的时候安排优化。一个索引无需优化也能够正常地执行。优化是一个耗时较多的过程。
delete 能够通过 id 或查询来指定。按 id 删除将删除具有指定 id 的文档;按查询删除将删除查询返回的全部文档。 
0 0
原创粉丝点击