solr
1.分布式全文检索(非实时同步db):站内搜索,使用传统的数据库查询方式无法满足一些高级的搜索需求(如搜索速度快, ![]()
![]()
![]()
![]()
搜索结果按相关度排序,搜索内容格式不固定)
a.单独使用lucene实现站内搜索:开发工作量大,表现在:索引维护、索引性能优化、
搜索性能优化等,不建议采用
b.通过第三方搜索引擎,对其依赖紧密,不方便扩展,不建议
c.基于solr(基于lucene)实现搜索,扩展性好并且可减少开发人员的工作量,
因为Solr提供了较完备的搜索引擎解决方案
d.solr可独立运行Jetty、Tomcat等Servlet容器,用post方法向Solr服务器发送一个描述Field的Xml文档
2.安装:

本地home安装路径:/root/soft/solr-4.10.3/example/solr
拷贝对于的jar包到tomcat:cp * /root/soft/apache-tomcat-8.0.38/lib/
解压:mkdir solr && unzip solr.war -d solr && rm -rf solr.war
启动tomcat:

常见搜索关键词存放位置:/root/soft/solr-4.10.3/example/solr/collection1/conf/schema.xml
3.solr分词器(对数据源加工处理):
索引结构:
a.索引表:存放具体的词汇,词汇在哪些文档里存储,索引里存储的就是分词器分词之后的结果
b.存放数据(文档信息集合)
用户搜索时:词库采用倒排序索引
4.无论是Solr还是lucene都对中文分词不太好,因此对索引中文需要使用IK中文分词器


5.在Solr和Lucene中,使用一个或多个Document来构建索引,Document包括一个或多个Field.Field包括名称、
内容以及告诉Solr如何处理内容的元数据。
Indexed:Indexed Field可进行搜索和排序,还可运行Solr分析过程(可修改内容以改进或更改结果)
Stored:Stored Field内容保存在索引中,对检索和醒目显示内容很有用,但对于实际搜索则不是必须的
posted on 2018-03-06 18:18 xiaojiayu0011 阅读(108) 评论(0) 收藏 举报
浙公网安备 33010602011771号