维基页面http://wiki.apache.org/solr/DataImportHandler解释了如何使用DataImportHandler索引数据.但该示例使用命令启动导入操作.如何安排工作定期执行此操作?c
Pas*_*imo 14
在UNIX/Linux上,cron job是你的朋友!在Windows上,有任务计划程序.
更新
要从Java代码执行此操作,因为这是一个简单的GET请求,您可以使用HTTP客户端库.有关使用GetMethod的信息,请参阅本教程.
如果需要以编程方式将其他请求发送到Solr,则可能应该使用Solrj库.它允许将所有基本命令发送到Solr,它可以配置为访问任何Solr处理程序:
CommonsHttpSolrServer server = new CommonsHttpSolrServer("http://localhost:8983/solr");
ModifiableSolrParams params = new ModifiableSolrParams();
params.set("command", "full-import");
QueryRequest request = new QueryRequest(params);
request.setPath("/dataimport");
server.request(request);
Run Code Online (Sandbox Code Playgroud)
小智 7
我能够按照以下步骤使其工作:
创建类ApplicationListener,HTTPPostScheduler和SolrDataImportProperties(http://wiki.apache.org/solr/DataImportHandler#Scheduling上列出的源代码).我相信这些课程尚未实施.
将以下侦听器添加到Solr web.xml文件:
<listener>
<listener-class>org.apache.solr.handler.dataimport.scheduler.ApplicationListener</listener-class>
</listener>
Run Code Online (Sandbox Code Playgroud)根据Wiki页面中的说明配置dataimport.properties.
使用以下crontab -e命令将此行添加到crontab :
0,30 * * * * /usr/bin/wget http://<solr_host>:8983/solr/<core_name>/dataimport?command=full-import
Run Code Online (Sandbox Code Playgroud)
这将每30分钟完全导入一次.替换<solr_host>并<core_name>配置您的配置
| 归档时间: |
|
| 查看次数: |
22766 次 |
| 最近记录: |