solr - 仅使用配置文件从索引中删除行

时间:2013-07-23 12:18:51

标签: solr solr4

我正在使用data-config.xml中的deltaQuery和deltaImportQuery属性更新我的solr索引 在我的情况下,我写

where MyDoc.LastModificationTime > '${dataimporter.last_index_time}'

然后在我添加一行后,我使用data-config.xml触发更新。

现在,有时我会删除一行 我怎样才能用配置文件实现这个 (不向solr发送删除休息命令)。

假设我的对象未被删除,但其状态已更改为已删除 我不会将该状态字段编入索引,因为我只想保存实时行。 (否则我可能只是过滤了它)
有办法吗? 感谢。

1 个答案:

答案 0 :(得分:2)

由于你没有提到任何我认为你到目前为止没有尝试过的地方,

您可以使用DataImportHandler支持的deletedPkQuery。您可以配置返回在delta-import期间需要删除的Ids(Solr文档ID)的查询。

你可以做一些类似的事情:

http://solr.pl/en/2011/01/03/data-import-handler-%E2%80%93-removing-data-from-index/