zoukankan      html  css  js  c++  java
  • Solr全文检索

    1.Solr的安装

    1.环境要求
        jdk1.7+tomcat8+solr5.5.0
    2.将以上的软件包上传到服务器
    3.
        安装tomcat8(解压文件)
            tar -zxvf apache-tomcat-8.5.24.tar.gz
    4.
        解压solr
            tar -zxvf solr-5.5.0.tgz
        
        1.将solr的服务拷贝到tomcat的webapps下
        cp -r  solr-5.5.0/server/solr-webapp/webapp/*  tomcat8/webapps/solr
        2.需要将solr需要日志的jar拷贝到tomcat8/webapp/solr/WEB-INF/lib
        cp -r solr-5.5.0/server/lib/ext/*.jar tomcat8/webapps/solr/WEB-INF/lib
        3.需要将日志的log4j配置文件拷贝到项目中
        mkdir -p tomcat8/webapps/solr/WEB-INF/classes
        cp -r solr-5.5.0/server/resource/log4j.properties tomcat8/webapps/WEB-INF/classes
        4.配置solrHome(存放索引)
        mkdir solr-home
        vi tomcat8/webapps/solr/WEB-INF/web.xml
        打开如下配置
        <env-entry>
           <env-entry-name>solr/home</env-entry-name>
           <env-entry-value>/put/your/solr/solr-home</env-entry-value>
           <env-entry-type>java.lang.String</env-entry-type>
        </env-entry>
        拷贝solr的配置文件到solr-home
        cp -r solr-5.5.0/server/solr/*  /root/solr/solr-home
        
      5.启动tomcat
          tomcat8/bin/startup.sh
          
      6.http://192.168.137.129:8080/solr/admin.html

    2.核心概念

      1.Solr服务器---->理解为数据库

      2.核---->表

      3.field---->表中字段

    3.创建核

      1.在solr-home下创建一个目录(目录名随意,例如t_item)

      2.拷贝核中所需要的配置文件(solr-home下configsets里面) : cp -r configsets/sample-techproducts-configs/* t_item

    4.系统界面操作

      1.新增和修改(id在索引库中存在就是修改,不存在就是新增): {"id":"change.me","title":"change.me"}

      id必须存在,可以理解为主键,key必须先配置(managed-schema)再使用

      

      2.删除使用xml
      <delete>
        <id>change.me</id>
      </delete>
      <commit/>

    5.Java中操作Solr

    1.添加依赖
    <dependency>
      <groupId>org.apache.solr</groupId>
      <artifactId>solr-solrj</artifactId>
      <version>5.5.0</version>
    </dependency>
    2.使用API
        1.获取和服务器连接
            String baseURL = "http://192.168.137.129:8080/solr/t_item"; //服务器地址,最后一个表示核
            SolrClient solrClient = new HttpSolrClient(baseURL);
        2.调用
            solrClient中的增删改查操作

    6.Solr添加域

    1.需要在solr-home,找到对应的核的目录,conf/managed-schema
            vi conf/managed-schema
            <!--配置自定义的域-->
    <field name="content_ik" type="text_ik" indexed="true" stored="true"/>
    <fieldType name="text_ik" class="solr.TextField">
      <analyzer class="org.wltea.analyzer.lucene.IKAnalyzer"></analyzer>
    </fieldType>
    
    2.将IK分词器拷贝到tomcat8/webapps/solr/WEB-INF/lib
            cp ik-analyzer-5.3.0.jar  tomcat8/webapps/solr/WEB-INF/lib
    
    3.重启服务器
    
    
    IK分词器需要添加扩展词典
        将配置文件IKAnalyzer.cfg.xml和词典上到 tomcat8/webapps/solr/WEB-INF/classes
  • 相关阅读:
    Jenkins安装及配置
    数据库命令扩展
    常用的数据库命令
    如何使用NiFi等构建IIoT系统
    云计算之概念——IaaS、SaaS、PaaS、Daas
    emqx的一个配置参数
    利用jsoup抓取网页图片
    nohup使用
    jsoup的使用
    java知识点链接
  • 原文地址:https://www.cnblogs.com/MrXiaoAndDong/p/Solr.html
Copyright © 2011-2022 走看看