Solr standalone 中的独立托管资源具有相同的 configSet
Independent managed resources in Solr standalone with the same configSet
我已经使用 Solr 一段时间了(目前使用 8.2.0),始终处于单机模式。我正在尝试使用同义词作为托管资源,我发现所有共享给定配置集的内核都共享同义词。事实上,更深入地挖掘似乎配置在核心创建时没有被复制,只是被引用,所以它实际上对所有核心使用相同的文件(在这种情况下为_schema_analysis_synonyms_english.json)。
我想定义一次核心配置,因为我将使用许多具有相同参数的核心,但我希望它们处理同义词和受保护的词独立。我知道我可以手动将 configset 的内容复制到核心目录,但是这个选项太麻烦了,因为它涉及到文件系统的干预,而且它可能无法很好地扩展,而且如果完全可以访问 Solr 服务器.
我尝试了一些选项,例如使用 <str name="shareSchema">${shareSchema:false}</str>
/var/solr/data/solr.xml
,但无济于事。
我能否期望有任何方式为通过 CREATE REST API 创建的核心提供此功能?如果我必须考虑转向 Solr 云模式,这种行为是否也存在或我想要实现的行为?
谢谢,
我找到了另一个在独立模式下运行良好的选项,它涉及在 <configset dir>/conf/
中的 solrconfig.xml
中使用环境变量。
如果我为托管资源内容手动设置 storageDir
,我可以强制每个核心使用不同的目录:
<restManager>
<str name="storageDir">/var/solr/data/${solr.core.name}/managed_resources</str>
</restManager>
我猜想有比/var/solr/data/${solr.core.name}
更好的东西可以用来引用核心目录,但是我还没找到
我已经使用 Solr 一段时间了(目前使用 8.2.0),始终处于单机模式。我正在尝试使用同义词作为托管资源,我发现所有共享给定配置集的内核都共享同义词。事实上,更深入地挖掘似乎配置在核心创建时没有被复制,只是被引用,所以它实际上对所有核心使用相同的文件(在这种情况下为_schema_analysis_synonyms_english.json)。
我想定义一次核心配置,因为我将使用许多具有相同参数的核心,但我希望它们处理同义词和受保护的词独立。我知道我可以手动将 configset 的内容复制到核心目录,但是这个选项太麻烦了,因为它涉及到文件系统的干预,而且它可能无法很好地扩展,而且如果完全可以访问 Solr 服务器.
我尝试了一些选项,例如使用 <str name="shareSchema">${shareSchema:false}</str>
/var/solr/data/solr.xml
,但无济于事。
我能否期望有任何方式为通过 CREATE REST API 创建的核心提供此功能?如果我必须考虑转向 Solr 云模式,这种行为是否也存在或我想要实现的行为?
谢谢,
我找到了另一个在独立模式下运行良好的选项,它涉及在 <configset dir>/conf/
中的 solrconfig.xml
中使用环境变量。
如果我为托管资源内容手动设置 storageDir
,我可以强制每个核心使用不同的目录:
<restManager>
<str name="storageDir">/var/solr/data/${solr.core.name}/managed_resources</str>
</restManager>
我猜想有比/var/solr/data/${solr.core.name}
更好的东西可以用来引用核心目录,但是我还没找到