我正在使用 solr 的数据导入处理程序从多个来源引入数据,使用多个实体。
当我运行导入时,dataimport.properties 文件对每个单独的实体都有多个时间戳。
我想为每个实体的增量查询使用这些时间戳,我试过 dih.entityname.last_index_time 无济于事。
如何使用实体时间戳?
我正在使用 solr 的数据导入处理程序从多个来源引入数据,使用多个实体。
当我运行导入时,dataimport.properties 文件对每个单独的实体都有多个时间戳。
我想为每个实体的增量查询使用这些时间戳,我试过 dih.entityname.last_index_time 无济于事。
如何使用实体时间戳?
自 SolR 1.4 以来,有自定义实体 last_index_time 可用。
查看核心目录中的dataimport.properties文件。
#Fri Dec 11 09:42:35 UTC 2015
core_1.last_index_time=2015-12-09 06\:00\:00
core_2.last_index_time=2015-12-09 06\:00\:00
last_index_time=2015-12-09 06\:00\:00
最后一行是整体 last_index_time 值,第二和第三是实体特定的。
您的增量查询应如下所示:
deltaQuery="SELECT primary_id FROM test_table WHERE last_update > '${dataimporter.test_1.last_index_time}'"
我已经在我的 DataImport 配置 - SolR 5 中使用了这个解决方案。