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中文分词器的步骤: ...
随机推荐
- python列表常用方法
list是一个类,用中括号括上,逗号分隔,元素可以是数字,字符,字符串,也可以是嵌套列表,布尔类型. 1.通过索引取值 li=[1,12,9,'age',['wangtianning',[19,'10 ...
- 使用FluentMigrator进行数据库迁移
介绍 在开发的过程中,经常会遇到数据库结构变动(表新增.删除,表列新增.修改.删除等).开发环境.测试环境.正式环境都要记性同步:如果你使用EF有自动迁移的功能,还是挺方便的.如果非EF我们需要手工处 ...
- maven snapshot和release版本的区别
Maven的Snapshot版本与Release版本 1. Snapshot版本代表不稳定.尚处于开发中的版本 2. Release版本则代表稳定的版本 3. 什么情况下该用SNAPSHOT? 协同开 ...
- C++中返回引用和返回值的区别
转自https://www.cnblogs.com/JMLiu/p/7928425.html 一.主要讨论下面两个函数的区别: int& at() { return m_data_; } in ...
- 牛刀小试MySQL--innodb_flush_log_at_trx_commit小结
参数名:innodb_flush_log_at_trx_commit 参数值: 0 事务提交的时候,不会去刷日志缓存区,也不会立马写入至日志文件中.这种设置最危险.如果数据库挂了且运气不好,数据库的最 ...
- 【转】repo介绍
Android 使用 Git 作为代码管理工具,开发了 Gerrit 进行代码审核以便更好的对代码进行集中式管理,还开发了 Repo 命令行工具,对 Git 部分命令封装,将百多个 Git 库有效的进 ...
- [引]ionic framework 相关网站
http://www.w3uu.com/intro/mobile/ionic2-tutorial.html ionic2中文教程 https://beta.ionicframework.com/do ...
- MVC HtmlHelper用法
HtmlHelper用来在视图中呈现 HTML 控件. 以下列表显示了当前可用的一些 HTML 帮助器. 本主题演示所列出的带有星号 (*) 的帮助器. ActionLink - Links to a ...
- Windows下vue-cli脚手架搭建入门<一>
简单了解Node.js.npm,安装Node.js,下载网址:http://nodejs.cn/download/ 查看node,npm安装成功与否.打开cmd命令行,输入命令 node-v .np ...
- IdentityServer4-客户端定义-翻译
客户端定义(Defining Client) 客户端可以从你的IDS服务器请求tokens. 通常,客户端需要遵循下面的通用设置: 一个唯一的Client ID 如果需要还可以提供密码 允许与toke ...