维护solr索引库
一
2)solrcore
一个solr下可以有多个solrcore,每个solrcore就是一个独立的索引库
3)solrconfig.xml
lib:配置solr的扩展包的位置,不指定路径的话就是collection1/lib目录,可以自动加载。如果没有需要手动创建
dataDir:索引文件保存的位置。如果不指定默认是Collection1/data目录。如果没有会自动生成
requestHandler:请求的url及对应的处理器的配置
4)添加solrcore
1、把Collection1复制一份,改名为collection2
2、修改core.properties中的内容
3、重启tomcat
5)Analyses
分析。在此功能中可以查看分析器的分词效果,必须查看现有的field或者是fieldType的分析效果
所有的field、fieldType都是定义在schema.xml中
6)Documents
可以对索引库进行维护。
可以实现增删改操作
7)Query
可以查询索引库
二 使用后台维护索引库
1、添加文档
在solr中添加文档的field必须在schema.xml中定义
每个solr文档中必须有一个id域
2、修改文档
在solr中没有对应的修改方法,只需要再添加一个新的文档,保证文档id和被修改的文档id一致即可。
3、删除文档
把文档格式改为xml
1)根据id删除
<delete>
<id>change.me</id>
</delete>
<commit/>
2)根据查询删除
查询需要使用lucene查询语法。在solr中完全支持lucene的查询语法。
<delete>
<query>*:*</query>
</delete>
<commit/>
三 使用solrj维护索引库
1、添加jar包
solrJ的jar包
solrJ运行依赖的jar包
需要example/lib/ext日志相关的jar包
2、添加文档、更新
1)创建一个SolrServer对象,使用HttpSolrServer,参数:solr服务的url
2)创建一个SolrInputDocument对象
3)向文档对象中添加域,每个文档必须有id域,每个域的名称必须在schema.xml中定义
4)把文档对象写入索引库
5)提交
3、删除文档
1、根据id删除
1)创建一个SolrServer对象
2)使用SolrServer的deleteById方法
3)提交
2、根据查询删除
1)创建一个SolrServer对象
2)使用SolrServer的deleteByQuery方法
3)提交
维护solr索引库的更多相关文章
- 使用solrj操作solr索引库
(solrj)初次使用solr的开发人员总是很郁闷,不知道如何去操作solr索引库,以为只能用<五分钟solr4.5教程(搭建.运行)>中讲到的用xml文件的形式提交数据到索引库,其实没有 ...
- 使用solrj操作solr索引库,solr是lucene服务器
客户端开发 Solrj 客户端开发 Solrj Solr是搭建好的lucene服务器 当然不可能完全满足一般的业务需求 可能 要针对各种的架构和业务调整 这里就需要用到Solrj了 Solrj是Sol ...
- 将数据库的数据导入solr索引库中
在solr与tomcat整合文章中,我用的索引库是mycore,现在就以这个为例. 首先要准备jar包:solr-dataimporthandler-4.8.1.jar.solr-dataimport ...
- 如何在分布式环境中同步solr索引库和缓存信息
天气依旧很好,主要是凉快.老习惯,我在北京向各位问好. 搜索无处不在,相信各位每天都免不了与它的亲密接触,那么我想你确实有必要来了解一下它们,就上周在公司实现的一个小需求来给各位分享一下:如何在分布式 ...
- solr索引库的创建
solr索引库的创建 一.找到你安装的[solrhome]目录(我的是这个) 二.进入该目录 三.选择其中任意一个索引库复制一份到该目录下并更名为要创建的索引库名称 四.进入[myindex]目录下, ...
- 商城06——solr索引库搭建&solr搜索功能实现&图片显示问题解决
1. 课程计划 1.搜索工程的搭建 2.linux下solr服务的搭建 3.Solrj使用测试 4.把数据库中的数据导入索引库 5.搜索功能的实现 2. 搜索工程搭建 要实现搜索功能,需要搭建 ...
- solr 索引库的维护
一.配置中文分析器:IK-analyzer,在FieldType中指定中文分析器:1 复制IK-analyzer到你的服务器指定目录中.2 在该目录中,我们需要的东西有:IKAnalyzer的jar包 ...
- 数据添加到solr索引库后前台如何搜索
主要结构: 查询 Dao: package com.taotao.search.dao.impl; import java.util.ArrayList; import java.util.List; ...
- 将Mysq数据导入solr索引库
本文的基础环境都是在centos 64bit,jdk1.7.79 将mysql 的jar 包添加到/home/hadoop/cloudsolr/solr-4.10.4/contrib/dataimpo ...
随机推荐
- python 调用github的api,呈现python的受欢迎的程度
1 使用api调用数据: 在浏览器的地址栏中输入: https://api.github.com/search/repositories?q=language:python&sort=star ...
- 预编译头文件stdafx.h-stdafx.cpp-stdafx.pch(pre-compile headfile)
tdafx的英文全称为:Standard Application Framework Extensions(标准应用程序框架的扩展). 所谓头文件预编译,就是把一个工程(Project)中使用的一些M ...
- fcgi vs. gunicorn vs. uWSGI
fcgi vs. gunicorn vs. uWSGI - Peterbe.comhttps://www.peterbe.com/plog/fcgi-vs-gunicorn-vs-uwsgi uWSG ...
- 使用.NET Framework开发IIS 7.0模块和处理程序拦截请求实现跳转
扩展IIS的两种方法:模块与处理程序. 模块,类似于以前的IIS版本中的ISAPI筛选器,它参与每个请求处理.IIS中一些现成的模块包括身份验证模块(用于处理请求的身份验证状态),压缩模块(用于压缩返 ...
- 阶段5 3.微服务项目【学成在线】_day02 CMS前端开发_11-webpack研究-npm和cnpm安装配置
node.js安装完成后,就自动安装了webpack. npm -v:查看npm安装的版本 当前安装目录默认的包 在node.js的目录下创建两个文件夹 这样路径就被修改成功了 cnpm npm in ...
- 关于adb命令获取安卓手机uuid时,demon 显示启动成功,但又获取不到uuid的解决办法:现象如下所示
* daemon not running. starting it now on port 5037 * *demon started successfully* *list of devices a ...
- Freemarker使用总结
spring mvc 中 Freemarker 获取项目根目录,方便HTML页面配置各种路径 在SpringMVC框架中使用Freemarker试图时,要获取根路径的方式如下: <!-- Fre ...
- 微信小程序 — 自定义picker选择器弹窗内容+textarea穿透bug
微信小程序中定义好的几种picker选择器,不管是日期选择器还是地区选择器,或是其他的都只有定死的样式和内容. 但是大多数开发程序的情况下还是需要自己写样式的,或是内容的. 例如: 代码如下: < ...
- Impacket网络协议工具包介绍
转载自FreeBuf.COM Impacket是一个Python类库,用于对SMB1-3或IPv4 / IPv6 上的TCP.UDP.ICMP.IGMP,ARP,IPv4,IPv6,SMB,MSRPC ...
- ffmpeg学习笔记-编译脚本
之前已经用他人的编译脚本对ffmpeg进行了成功编译,那么在裁剪ffmpeg的时候需要指定文件,这时候应该怎么编写编译脚本呢?本文目的在于说明ffmpeg编译脚本的编写 首先在ffmpeg的目录下新建 ...