jqkyp 发表于 2018-11-1 11:14:33

solr(1):简介与配置

  一、简介
  1.1、solr是什么
  Solr 是Apache下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文搜索服务器。Solr提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展,并对索引、搜索性能进行了优化。
  Solr是一个全文检索服务器,只需要进行配置就可以实现全文检索服务。
  二、配置
  1、在solr中默认是中文分析器,需要手工配置。配置一个FieldType,在FieldType中指定中文分析器。
  2、Solr中的字段必须是先定义后使用。
  2.1、配置中文分析器
  1、使用IK-Analyzer。把分析器的文件夹上传到服务器。

  2、把分析器的jar包添加到solr工程中
# cp IKAnalyzer2012FF_u1.jar /opt/tomcat/webapps/solr/WEB-INF/lib  3、需要把IKAnalyzer需要的扩展词典及停用词词典、配置文件复制到solr工程的classpath
# cd /opt/tomcat/webapps/solr/WEB-INF/  
# mkdir classes
  
# cd /opt/tar/IK\ Analyzer\ 2012FF_hf1/
  
# cp IKAnalyzer.cfg.xml ext_stopword.dic mydict.dic /opt/tomcat/webapps/solr/WEB-INF/classes/
  
#
  注意:扩展词典及停用词词典的字符集必须是utf-8。不能使用windows记事本编辑。
  4、配置fieldType。需要在solrhome/collection1/conf/schema.xml中配置
# vi /opt/solr/solrhome/collection1/conf/schema.xml  在其末尾添加如下:
  
   
  


  2.2、配置业字段
  业务字段判断标准:
  1、在搜索时是否需要在此字段上进行搜索。例如:商品名称、商品的卖点、商品的描述
  2、后续的业务是否需要用到此字段。例如:商品id。
  如:商品id、商品title、卖点、价格、商品图片、商品分类名称、商品描述
  Solr中的业务字段:
  1、id——》商品id,其他的字段与对应字段参考此。
# vi /opt/solr/solrhome/collection1/conf/schema.xml  在其末尾添加如下:
  

  

  

  

  

  

  

  

  

  


  2、重启tomcat
测试分词是否好用:
测试业务字段是好用:
  1、添加测试数据

  2、查询

  查询条件:
  查所有:*:*
  根据指定域(字段)查:字段名:字段值,如:item_title:测试
  返回的域:
  返全部:默认
  返指定的:域名称,多个用逗号隔开,如:id,item_price
  默认搜索的域:
  如果根据指定域查的时候,本来要写字段名:字段值,结果却只写了字段值,那么会搜索不到,如果给定了默认搜索的域则可以
  高亮显示:
  hl.fl:高亮显示的域
  hl.simple.pre:开始标签
  hl.simple.post:结束标签
  2.3、维护索引库
  添加:添加一个json格式的文件就可以,参考上面
  修改:添加一个新的文档,要求文档id和被修改文档的id一致(原理是先删除后添加)
  删除:使用xml格式,有两种方法
  1、根据id删除:

  2、根据查询删除



页: [1]
查看完整版本: solr(1):简介与配置