Solr全文检索
1.Solr的安装
.环境要求
jdk1.+tomcat8+solr5.5.0
.将以上的软件包上传到服务器
.
安装tomcat8(解压文件)
tar -zxvf apache-tomcat-8.5..tar.gz
.
解压solr
tar -zxvf solr-5.5..tgz .将solr的服务拷贝到tomcat的webapps下
cp -r solr-5.5./server/solr-webapp/webapp/* tomcat8/webapps/solr
.需要将solr需要日志的jar拷贝到tomcat8/webapp/solr/WEB-INF/lib
cp -r solr-5.5./server/lib/ext/*.jar tomcat8/webapps/solr/WEB-INF/lib
.需要将日志的log4j配置文件拷贝到项目中
mkdir -p tomcat8/webapps/solr/WEB-INF/classes
cp -r solr-5.5./server/resource/log4j.properties tomcat8/webapps/WEB-INF/classes
.配置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./server/solr/* /root/solr/solr-home .启动tomcat
tomcat8/bin/startup.sh .http://192.168.137.129:/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
Solr全文检索的更多相关文章
- SOLR (全文检索)
SOLR (全文检索) http://sinykk.iteye.com/ 1. 什么是SOLR 官方网站 http://wiki.apache.org/solr http://wiki.apach ...
- solr全文检索原理及solr5.5.0 Windows部署
文章原理链接:http://blog.csdn.net/xiaoyu411502/article/details/44803859 自己稍微总结:全文检索主要有两个过程:创建索引,搜索索引 创建索引: ...
- solr全文检索基本原理
场景:小时候我们都使用过新华字典,妈妈叫你翻开第38页,找到“坑爹”所在的位置,此时你会怎么查呢?毫无疑问,你的眼睛会从38页的第一个字开始从头至尾地扫描,直到找到“坑爹”二字为止.这种搜索方法叫做顺 ...
- solr全文检索实现原理
本文转自:https://blog.csdn.net/u014209975/article/details/53263642 https://blog.csdn.net/lihang_1994/ ...
- Solr全文检索框架
概述: 什么是Solr? Solr是Apache下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文搜索服务.Solr可以独立运行在Jetty.tomcat.webLogic.webSh ...
- Solr全文检索引擎配置及使用方法
介绍 Solr是一款开源的全文检索引擎,基于lucene.拥有完善的可配置功能界面.具有丰富的查询语言,可扩展,可优化. 下载安装 进入solr官网下载包(这里我使用的版本是8.0) http://w ...
- solr全文检索学习
序言: 前面我们说了全局检索Lucene,但是我们发现Lucene在使用上还是有些不方便的,例如想要看索引的内容时,就必须自己调api去查,再例如一些添加文档,需要写的代码还是比较多的 另外我们之前说 ...
- 【搜索引擎】Solr全文检索近实时查询优化
设置多个搜索建议查找算法 <searchComponent name="suggest" class="solr.SuggestComponent"> ...
- solr服务中集成IKAnalyzer中文分词器、集成dataimportHandler插件
昨天已经在Tomcat容器中成功的部署了solr全文检索引擎系统的服务:今天来分享一下solr服务在海量数据的网站中是如何实现数据的检索. 在solr服务中集成IKAnalyzer中文分词器的步骤: ...
随机推荐
- salesforce零基础学习(九十)项目中的零碎知识点小总结(三)
本次的内容其实大部分人都遇到过,也知道解决方案.但是因为没有牢记于心,导致问题再次出现还是花费了一点时间去排查了原因.在此记录下来,好记性不如烂笔头,争取下次发现类似的现象可以直接就知道原因.废话少说 ...
- Linux_CentOS-服务器搭建 <五> 补充
O:文件的编码格式 1.文件转码问题 Windows中默认的文件格式是GBK(gb2312),而Linux一般都是UTF-8. 那么先说,如何查看吧.这时候强大的vi说,I can do that.( ...
- Django使用Channels实现WebSocket--上篇
WebSocket - 开启通往新世界的大门 WebSocket是什么? WebSocket是一种在单个TCP连接上进行全双工通讯的协议.WebSocket允许服务端主动向客户端推送数据.在WebSo ...
- leetcode — swap-nodes-in-pairs
/** * Source : https://oj.leetcode.com/problems/swap-nodes-in-pairs/ * * Created by lverpeng on 2017 ...
- js仿qq分组折叠效果
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...
- Go HTTP服务器
HTTP HandleFunc的简单使用 package main import ( "log" "net/http" ) func main() { //注册 ...
- 升级mac Mojave系统,git无法使用
升级mac Mojave系统后 无法使用git,出现如下问题 xcrun: error: invalid active developer path (/Library/Developer/Comma ...
- js中的DOM操作汇总
一.DOM创建 DOM节点(Node)通常对应于一个标签,一个文本,或者一个HTML属性.DOM节点有一个nodeType属性用来表示当前元素的类型,它是一个整数: Element,元素 Attrib ...
- Java 在 CMD 环境下编译
1. 未引用第三方 Jar 包类(该 Java 类默认无包名) # 定位到类存放地址 cd E:\tsgg # 编译命令 javac Test.java # 执行命令 java Test 2. 引用第 ...
- 两个inline-block消除间距和对齐(vertical-align)
一.神奇的两个inline-block 很初级的问题,无聊决定写一个故事. 故事的主人公很简单,两个inline-block元素.代码如下,为了看起来简单明了,写得很简陋.效果图如右.发现有两个问题. ...