【转】Solr5.3.1定时增量添加索引和重做索引

简介:   本文转自:https://code.google.com/p/solr-dataimport-scheduler/ Solr Data Import Hander Scheduler 说明:Solr官方提供了很强大的Data Import Request Handler,同时提供了一个简单的 Scheduler,Url:http://wiki.

  本文转自:https://code.google.com/p/solr-dataimport-scheduler/

Solr Data Import Hander Scheduler 说明:
Solr官方提供了很强大的Data Import Request Handler,同时提供了一个简单的 Scheduler,Url:http://wiki.apache.org/solr/DataImportHandler
示例中的 Scheduler 只支持增量更新,不支持定期重做索引,因此我做了一个简单的封装,增加了重做索引的定时器.
(原定时器作者是:Marko Bonaci, 在此表示感谢!)The original Scheduling source by Marko Bonaci, Thank him!

使用说明
  将 apache-solr-dataimportscheduler-1.0.jar 和solr自带的 apache-solr-dataimporthandler-.jar, apache-solr-dataimporthandler-extras-.jar 放到solr.war的lib目录下面
修改solr.war中WEB-INF/web.xml, 在servlet节点前面增加:

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

  将apache-solr-dataimportscheduler-.jar 中 dataimport.properties 取出并根据实际情况修改,然后放到 solr.home/conf (不是solr.home/core/conf) 目录下面
  重启tomcat或者jboss 即可

  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=core1,core2

#  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,即5天; 
#  为空,为0,或者注释掉:表示永不重做索引
reBuildIndexInterval=7200

#  重做索引的参数
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

 

相关文章
|
安全 大数据 API
ES如何查询索引的全量数据
ES如何查询索引的全量数据
2295 0
|
存储 监控 数据可视化
Elasticsearch索引增量统计及定时邮件实现
0、需求 随着ELKStack在应用系统中的数据规模的急剧增长,每天千万级别数据量(存储大小:10000000*10k/1024/1024=95.37GB,假设单条数据10kB,实际远大于10KB)的累积成为日常需求。 如何以相对简单的图形化效果展示数据的增量呢? 本文给出思路和实现。
259 0
Elasticsearch索引增量统计及定时邮件实现
|
存储 NoSQL MongoDB
MongoDB 定位 oplog 必须全表扫描吗?
MongoDB oplog (类似于 MySQL binlog) 记录数据库的所有修改操作,除了用于主备同步;oplog 还能玩出很多花样,比如 全量备份 + 增量备份所有的 oplog,就能实现 MongoDB 恢复到任意时间点的功能 通过 oplog,除了实现到备节点的同步,也可以额外再往单独的集群同步数据(甚至是异构的数据库),实现容灾、多活等场景,比如阿里云开源的 MongoShake 就能实现基于 oplog 的增量同步。
|
Java 应用服务中间件 索引
solr7.4定时/实时更新/重建索引配置,及报错404问题解决方案
  本文分两部分: 一、Solr定时/实时更新/重建索引配置。 二、Solr7+版本,服务器启动报错,页面404解决方案。
2769 0
|
SQL 自然语言处理 监控
日志服务索引那些事儿
日志服务索引那些事儿 简介 日志是排查问题最基本也是最重要的信息,排查问题原始的方式是登录机器查看日志,分布式场景下登录所有的机器代价太大,不利于问题排查。所以需要将日志集中采集,而且要快速查询到问题日志。
2797 0
|
关系型数据库
Greenplum数据增量导入的唯一值自增处理
阿里云的Greenplum(以下简称GP)已经公测了一段时间,陆续接到很多用户的反馈。其中一些使用上的问题比较有趣,在这里与大家分享一下。 其中一个case是字段的唯一键和自增值问题。在导入GP之前,某id字段已经保证了唯一性,但在此次导入之后,可能会有更多的导入,这个时候希望GP在原来最大id值的基础上自增。 GP是在PostgreSQL(以下简称PG)上开发而来,其操作基本沿用。在
1935 0