solr 定时全量索引 增量索引与dataimporter.properties 配置

slor定时增量更新索引dataimport.properties 立即下载
solr增量索引配置 
1.在进行增量索引前,首先要弄懂几个必要的属性,以及数据库建表事项,和dataimporter.properties 

 

data-config.xml里面的数据 

  <!--  transformer 格式转化:HTMLStripTransformer 索引中忽略HTML标签   ---> 
  <!--  query:查询数据库表符合记录数据   ---> 
  <!--  deltaQuery:增量索引查询主键ID    --->    注意这个只能返回ID字段 
  <!--  deltaImportQuery:增量索引查询导入数据  ---> 
  <!--  deletedPkQuery:增量索引删除主键ID查询  ---> 注意这个只能返回ID字段 


数据库配置注意事项 

1.如果只涉及添加,与修改业务,那么数据库里只需额外有一个timpstamp字段就可以了,默认值为当前系统时间,CURRENT_TIMESTAMP(笔者的数据为mysql的) 
2.如果还涉及删除业务,那么数据里就需额外再多添加一个字段isdelete,int类型的用0,1来标识,此条记录是否被删除,当然也可以用其他字段标识,ture或false都可以 

dataimporter.properties 

这个配置文件很重要,它是用来记录当前时间与上一次修改时间的,通过它能够找出,那些,新添加的,修改的,或删除的记录


下面为笔者当时测试时的一个演示,其中添加,修改,删除,都涉及了

    <dataConfig>   
	     <!---   此段话配置的是一个MySQL的数据源,(数据源也可以配置在solrconfig.xml中)  --->
        <dataSource name="mydb" type="JdbcDataSource" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost/test" user="root" password="ninemax"/>
		
		
		<document>
		     <!--  下面分别来介绍属性(如有错误,欢迎指出) -->
			 <!--  pk="ID" 这个很有必要,因为其中的增量索引查询主键ID时需要  -->
			  <!--  dataSource="mydb"   这个引用名字是引用上面数据源的名字 -->
			  <!--  name="myinfo"   这个名字必须唯一,存在多个实体时 -->
			   <!--  query="select  *  from myinfo WHERE isdelete=0   query查询是指
               查询出表里所有的符合条件的数据,因为笔者测试的有删除业务,所以
			   where  后面有一个限定条件isdelete=0,意思为查询未被删除的数据
			   
			   (注意这个query查询只对第一次全量导入有作用,对增量导入不起作用)
			   -->
			   <!--
			   deltaQuery="select ID  from myinfo where my_date > '${dataimporter.last_index_time}'" 
			   deltaQuery的意思是,查询出所有经过修改的记录的ID
			   可能是修改操作,添加操作,删除操作产生的
			   (此查询只对增量导入起作用,而且只能返回ID值)
			   -->
			   <!--
			   deletedPkQuery="select ID from myinfo where isdelete=1"	
			   此操作值查询那些数据库里伪删除的数据的ID(即isdelete标识为1的数据)
			   solr通过它来删除索引里面对应的数据
			   (此查询只对增量导入起作用,而且只能返回ID值)
			   -->
			   <!--
			    deltaImportQuery="select * from myinfo where ID='${dataimporter.delta.ID}'"
				次查询是获取以上两步的ID,然后把其全部数据获取,根据获取的数据
				对索引库进行更新操作,可能是删除,添加,修改
				(此查询只对增量导入起作用,可以返回多个字段的值,一般情况下,都是返回所有字段的列)
			   -->
			   
			   
			 
		     <entity pk="ID"  dataSource="mydb" name="myinfo" query="select  *  from myinfo WHERE isdelete=0 " 
			  deltaQuery="select ID  from myinfo where my_date > '${dataimporter.last_index_time}'" 
              deletedPkQuery="select ID from myinfo where isdelete=1"			  
			  deltaImportQuery="select * from myinfo where ID='${dataimporter.delta.ID}'"
			  
			 >
			 <!--  此条记录有必要说一下,ID指定大写的,与上面语句中的对应起来---->
			 
			  <field column="ID" name="id"/>
		       <field column="name" name="name"/>
			   <field column="address" name="address"/>
			   <field column="age" name="age"/>
			    <field column="my_date" name="my_date"/>
				 <field column="isdelete" name="isdelete"/>
		      </entity>
			 

		</document>
		
    </dataConfig>  
   

dataimporter.properties 配置

参考:官方文档:http://wiki.apache.org/solr/DataImportHandler#Scheduling


googlecode 找到:https://code.google.com/p/solr-dataimport-scheduler/


1.复制solr-4.2.11\solr-4.2.1\dist目录下solr-dataimporthandler-4.2.1.jar 和solr-dataimporthandler-extras-4.2.1.jar到


D:\program\tomcat6\webapps\solr\WEB-INF\lib目录下


2.从https://code.google.com/p/solr-dataimport-scheduler/downloads/list 下载apache-solr-dataimportscheduler-1.0-with-source.jar到


D:\program\tomcat6\webapps\solr\WEB-INF\lib目录下


3.取出apache-solr-dataimportscheduler-1.0-with-source.jar内的dataimport.properties到D:\program\tomcat6\solrapp\solr\conf


conf文件夹是没有的,要新建


4.修改D:\program\tomcat6\webapps\solr\WEB-INF\web.xml,加入

<listener>
             <listener-class>org.apache.solr.handler.dataimport.scheduler.ApplicationListener</listener-class>
   </listener>

5.修改dataimport.properties内容:

#################################################
#                                               #
#       dataimport scheduler properties         #
#                                               #
#################################################

#  to sync or not to sync
#  1 - active; anything else - inactive
syncEnabled=1

#  which cores to schedule
#  in a multi-core environment you can decide which cores you want syncronized
#  leave empty or comment it out if using single-core deployment
#syncCores=game,resource
syncCores=collection1
#  solr server name or IP address
#  [defaults to localhost if empty]
server=localhost

#  solr server port
#  [defaults to 80 if empty]
port=8080

#  application name/context
#  [defaults to current ServletContextListener's context (app) name]
webapp=solr

#  URL params [mandatory]
#  remainder of URL
params=/dataimport?command=delta-import&clean=false&commit=true

#  schedule interval
#  number of minutes between two runs
#  [defaults to 30 if empty]
interval=1

#  重做索引的时间间隔,单位分钟,默认7200,即1天; 
#  为空,为0,或者注释掉:表示永不重做索引
reBuildIndexInterval=2

#  重做索引的参数
reBuildIndexParams=/dataimport?command=full-import&clean=true&commit=true

#  重做索引时间间隔的计时开始时间,第一次真正执行的时间=reBuildIndexBeginTime+reBuildIndexInterval*60*1000;
#  两种格式:2012-04-11 03:10:00 或者  03:10:00,后一种会自动补全日期部分为服务启动时的日期
reBuildIndexBeginTime=03:10:00


dataimport.properties Solr自动更新配置文件的配置文件,修正版本,亲测可用 立即下载

相关推荐

Axure原型模板与元件库APP交互设计素材(附资料)

在Axure中,手机模型是展示APP或小程序界面效果的重要工具。通过导入手机模型元件,设计师可以更加直观地模拟真实设备的显示效果,从而更准确地评估设计的可行性和用户体验。Axure官方及第三方资源库中提供了多种品牌和型号的手机模型,如iPhone、Android等,设计师可以根据项目需求选择合适的模型进行使用。Axure作为一款强大的原型设计工具,为APP和小程序的设计与开发提供了丰富的界面组件元件库和交互设计素材。

招风的黑耳优快云 1976

solr增量 dih deltaimport 入门

本例仅仅对于单表增量的进行了测试。solr增量的采集原理是依赖系统的时间进行了增量采集,所以我们必须保证数据库的系统时间与solr所在jvm时间一致。 开始之前下面的提醒很重要: DataImportHandler is a data import tool for Solr which makes importing data from Databases, XML files an...

java 技术交流。 571

保姆级教程:用QSTEM和DrProbe搞定你的第一张STEM模拟图(附Fe3O4实例文件)

本文提供了一份详细的STEM模拟图像生成教程,涵盖从晶体结构获取到最终图像模拟的全过程。通过QSTEM和DrProbe软件的操作指南,帮助材料科学研究者快速掌握STEM模拟技术,特别适合初学者。教程包含Fe3O4实例文件,详细解析参数设置、计算优化和结果分析等关键步骤。

weixin_33730836的博客 522

Solr7 基础知识一

第一、Solr7 简介和环境搭建 1.1 Solr 简介 solr是企业级应用的全文检索项目,它是基于Apache Lucence搜索引擎开发出来的用于搜索的应用工程 运行环境:solr需要java8环境,且需要在环境变量中添加 JAVA_HOME变量。 1.2 Solr7 安装 下载地址https://lucene.apache.org/solr/mirrors-solr-latest-redir.html (我下载的是7.4版本的)   在solr5以前solr的启动都有tomca...

zhouzhiwengang的专栏 647

如何用Python实现SPEI指数计算?从数据准备到结果可视化完整指南

本文提供了一份完整的Python实现SPEI指数计算指南,涵盖从数据准备、潜在蒸散量计算到结果可视化的全流程。详细介绍了使用Thornthwaite方法计算PET、拟合三参数log-logistic分布以及标准化转换的核心算法,并提供了模块化代码和可视化方案,帮助用户构建可复用的干旱分析工具。

cola5的博客 267

Open5GS实战:从零搭建树莓派5G核心网并与商用终端联调

本文详细介绍了如何在树莓派5上从零开始搭建基于Open5GS的5G核心网,涵盖系统准备、依赖安装、源码编译、关键配置修改及服务启动全流程。通过整合SDR基站与商用终端进行端到端联调,为开发者和研究者提供了一个低成本、可实践的5G网络实验平台,助力物联网与边缘计算应用的本地化测试与验证。

weixin_29194255的博客 157

solr

(一)什么是solr? 概要简介: solr是一个独立的企业级搜索应用服务器,对外提供类似web-service的API接口。是一个高性能,基于Lucene(开源搜索引擎框架)的全文搜索服务器。实现了可配置、可扩展并对查询性能进行了优化,并且提供了一个完善的功能管理界面,是一款非常优秀的全文搜索引擎。 全文检索是指是计算机索引程序扫描文章中的每一个词,对每个词都建立索引,指明该...

baidu_41814738的博客 302

构建一个基于Simulink的LC滤波器仿真模型

需求分析LC滤波器(Inductor-Capacitor Filter)是一种常见的无源滤波器,广泛应用于电力电子、通信、音频处理等领域。其主要作用是平滑输入信号中的高频谐波成分,保留低频或直流成分,从而提高输出信号的质量。在电力电子系统中,LC滤波器常用于逆变器、整流器等设备的输出端,以减少开关噪声和电磁干扰(EMI),确保输出电压和电流的稳定性。本项目将基于Simulink平台,开发一个完整的LC滤波器仿真模型,涵盖从电源输入到滤波输出的整个过程,并通过PI控制器实现对滤波效果的闭环控制。

MHD0815的博客 733

solr 数据导入过程中unable to read:dataimport.properties问题的解决

win7环境下,solr7.5.0版本,Jetty服务器,SQL server数据库,已将solr-dataimporthandler-7.5.0.jar、solr-dataimporthandler-extras-7.5.0.jar、sqljdbc42.jar相关驱动放入..\solr-7.5.0\server\solr-webapp\webapp\libs目录下; solrconfig.xm...

puzzy的专栏 3593

立项书8分钟定生死?手把手教你用ChatGPT辅助打造高水平申报书,让评审专家一看就想打高分!

宏大叙事、空话堆砌只会让评审绕晕,不如聚焦一个具体问题,拿出清晰的研究路径、扎实的设计方案,把“我想做什么、为什么做、打算怎么做”讲明白。对评审来说,关键不在你读了多少,而在你能否看清领域的共识、争议和空白,GPT的作用就在于帮你理清研究脉络,发现问题结构,聚焦那些还没被充分讨论的变量或方法,去提升综述的深度。之前要用到ProcessOn、Draw.io等工具画流程图,现在有了ai虽然方便了,但也需要多次调教,如果嫌麻烦,七哥给大家准备了课题申报常用的流程图,技术路线图,方便大家直接拿来编辑填空使用。

智能AI让学术科研更容易 289

Unity 面试篇⚠️ | Unity性能优化好,山寨机都能跑~

Unity 面试篇⚠️ | Unity性能优化好,山寨机都能跑~

m0_58523831的博客 1万+

solr mysql 增量更新_solr 的全量更新与增量更新

1.solr 的全量更新1.core/conf 目录下的 solrconfig.xml,新增如下配置data-config.xml2 在core/conf 目录下的新建 data-config.xml 文件,新增如下配置3.修改core/conf 目录下 managed-schema.xml 的文件,新增需要索引的列,示例:4.进入solr 的后台管理,进行全量更新2. solr 的增量更新1.首...

weixin_34726945的博客 269

使用Simulink对固定翼无人机的自动起飞与降落进行仿真

本文介绍了基于Simulink的固定翼无人机自动起飞与降落控制系统设计方法。系统包含飞行器动力学模型、控制系统、环境模拟等模块,通过简化动力学方程描述无人机运动特性。详细说明了从创建模型、设置动力学方程、设计PID控制器(包括自动起飞和降落控制策略)到添加环境模拟的完整仿真流程。重点阐述了升降舵和发动机推力的控制律设计,以及性能评估要点。本方法可有效验证控制系统设计,优化飞行稳定性和安全性参数,为无人机自主控制提供仿真支持。

amy_mhd的博客 223

solr 的全量更新与增量更新

1.solr 的全量更新 1.core/conf 目录下的 solrconfig.xml,新增如下配置 <!--添加如下配置 增加resultHandler配置 --> <requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">...

weixin_30481087的博客 1094

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

Solr 4.x定时、实时增量索引 - 修改、删除和新增索引

开始之前,可以参考上篇博文增量索引-数据导入并索引: http://josh-persistence.iteye.com/admin/blogs/2017059             Solr增量索引配置   一、开始增量索引前的准备工作。 1、认识data-config.xml中相关属性                              注意这个query只返回ID字

htofly的专栏 1万+

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

solr的全量更新和增量更新

solr的全量更新和增量更新 首先让我们了解一下什么是全量更新和增量更新 全量更新(full-import):将数据库的数据重新导入进入solr缓存当中这就叫全量更新; **增量更新(delta-import):**当你在sorl中删除了其中的几条数据,然后在Dataimport中选择delta-import这个选项进行导入时,他只会导入你所删除的数据进行更新,其他存储在solr缓存中的数据不会进行更新这就叫增量更新; 接下来我们来解决增量更新所需要的的配置: 1.更新solr-data-config.x

qq_45572205的博客 977

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

solr的增量更新和全量更新

solr的增量更新和全量更新 一、solr全量更新 找到核心目录下的conf下的solrconfig.xml添加如下: 找到data-config.xml文件添加数据源 3.managed-schema.xml文件添加新增字段的索引列 二、solr的增量更新 首先要了解的几个必要属性,和数据库的属性字段,以及dataimporter.properties and solr-data-config.xml文件的数据 <!-- transformer 格式转化:HTMLStripTran

lyra_love的博客 375

solr全量更新和增量更新

1、全量更新 数据库的数据导入到 solr缓存库就是更新 full-import:全量更新,意思是重新把全部数据从数据库导入,一般会先删除现有的,再进行导入,所以需要勾选Clean清除本地 2、增量更新 2.1.对应全量更新,增量更新新增的 <!-- transformer 格式转化:HTMLStripTransformer 索引中忽略HTML标签 ---> <!-- query:查询数据库表符合记录数据 ---> <!-- deltaQuery:增

zeit浅白的博客 941

solr6 mysql增量更新_solr 的全量更新与增量更新

1.solr 的全量更新1.core/conf 目录下的 solrconfig.xml,新增如下配置data-config.xml2 在core/conf 目录下的新建 data-config.xml 文件,新增如下配置driver="com.mysql.jdbc.Driver"url="jdbc:mysql://192.168.2.10:3306/xt"user="root"password="...

weixin_39876514的博客 143

sorl的全量更新与增量更新

<!-- transformer 格式转化:HTMLStripTransformer 索引中忽略HTML标签 ---> <!-- query:查询数据库表符合记录数据 ---> <!-- deltaQuery:增量索引查询主键ID ---> 注意这个只能返回ID字段 <!-- deltaImportQuery:增量索引查询导入数据 ---> <!-- deletedPkQuery:增量索引删除主键ID查询 ---> 注意这个只能返回ID字段

qq_45764370的博客 252

solr4.2增量索引之同步(修改,删除,新增)--转载

原文地址:http://www.jiancool.com/article/12743229775/;jsessionid=14E9B3F1BB33399799884B5C8F15DDE1 solr增量索引配置1.在进行增量索引前,首先要弄懂几个必要的属性,以及数据库建表事项,和dataimporter.properties data-confi...

197

三、Solr 导入Sql Server 数据(增量导入)

关于数据导入,这些概念确实不好理解,需要大量的自测与理解,目前没有发现讲解的比较全面的视频或教程,以下内容是自己收集摸索出来的 测试数据 如果要使用增量导入,前提是你的表必需有两个字段,一个是删除标志字段即逻辑删除标志:is_del,另一个则是数据创建时间字段:create_time,字段名称不一定非得是is_del和create_time,但必须要包含两个表示该含义的字段。根据数据创建时间跟上一次增量导入操作时间一对比,就可以通过SQL语句查询出需要增量导入的数据,根据is_del字段可...

w13511069150的博客 612

配置solr增量更新

增量更新:根据某一字段得值,动态导入更新数据 配置增量更新: 第一步:导入增量更新jar包 把apache-solr-dataimportscheduler.src放到tomcat的solr目录下的lib目录下 jar包链接://download.csdn.net/download/qq_41622603/12088202 第二步:配置增量更新文件 在solr_home...

qq_41622603的博客 461

solr4.2增量索引之同步(修改,删除,新增)

solr增量索引配置 1.在进行增量索引前,首先要弄懂几个必要的属性,以及数据库建表事项,和dataimporter.properties data-config.xml里面的数据 <!-- transformer 格式转化:HTMLStripTransformer 索引中忽略HTML标签 --...

weixin_34349320的博客 299
上一篇: rabbitMQ WINDOWS 安装 入门
下一篇: 久没上来,发现grails文章的浏览量比较多,看来现在国内用grails+groovy的人越来越多了
欧德曼
博客等级 码龄19年 63粉丝 82原创
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值