在两个不同的服务器中合并 SOLR 核心

Merging SOLR core in two different servers

是否可以合并存在于两个不同 solr 服务器中的内核?
例如,我在 SOLR 1 中有核心 A 和核心 B,我想将核心 A 和核心 B 合并到 SOLR 2 中存在的核心 C。 这可以通过某种方式实现吗?

SOLR 1 -(核心 A,核心 B)。

SOLR 2 -(核心 C)

基本上我正在尝试将核心 A 和 B 合并到核心 C 中。

您可以将 DataImportHandler 与 SolrEntityProcessor 一起使用。它有点隐蔽,但是 is documented in the old community wiki。我不知道这是否适用于更大的内核和更多的文档,所以请注意可能的限制。

另一种选择是使用复制将核心 A 和核心 B 放到 Solr 2 上,然后使用常规的 CoreAdmin 和 MERGEINDEXES 将所有内容合并到一个核心中。这可能会更高效,并且可以处理更大的数据集。

第三个选项是编写一个小实用程序并使用导出接口从前两个服务器导出内容并将其索引到第三个服务器。这将是最灵活的方法。