0

我需要将 Solr 索引与数据库表同步。在任何给定时间,Solr 索引可能需要添加或删除文档。数据库的性质使数据导入处理程序的增量导入功能无法检测到更改。

我提出的解决方案是检索数据库表的所有主键和 Solr 索引的所有唯一键(包含相同的整数值)的列表并比较这些列表。我会为此使用 SolrJ。

但是,要获取所有 Solr 文档,需要将最大整数值硬编码为结果计数限制的臭名昭著的方法。使用这种方法似乎不受欢迎。我的情况是否有理由忽略此建议,还是有其他方法?

4

1 回答 1

0

您可以执行两个查询以在一批中列出来自 solr 的所有键:第一次使用 rows=0,您将获得许多命中,第二次使用该数字作为 rows 参数。它不是非常理想的解决方案,但有效。第二种可能性是将更新日期存储在 solr 索引中,并仅从上次同步中获取更改的文档。

于 2013-10-12T08:30:10.950 回答