Indexing 重命名ApacheSolr集合或类似的东西
我知道我们不能直接重命名任何solr集合。我们可以创建一个指向集合的别名。但是我们需要重命名集合。在solrcloud中有没有办法实现以下目标?(版本:ApacheSolr版本8.4.1)Indexing 重命名ApacheSolr集合或类似的东西,indexing,solr,lucene,solrcloud,solr4,Indexing,Solr,Lucene,Solrcloud,Solr4,我知道我们不能直接重命名任何solr集合。我们可以创建一个指向集合的别名。但是我们需要重命名集合。在solrcloud中有没有办法实现以下目标?(版本:ApacheSolr版本8.4.1) 我们有一个主集合(我们目前正在使用) 我们有第二个临时集合(我们计划将其移动) 我们不能两者兼而有之 我们有太多的应用程序是硬编码来使用主集合的 我们在temp_集合中有大量索引 我们最初的想法是将主集合重命名为备份集合,然后将临时集合重命名为主集合 有没有办法做到这一点。这样我们就不会在应用程序中遇到任何停
有没有办法做到这一点。这样我们就不会在应用程序中遇到任何停机 您可以尝试以下步骤
请注意,在Solr中重命名集合实际上不会更改集合的名称(即原始名称仍存在于碎片名称中等)。实际上,它只是在做您已经提到的事情,更改集合的别名。“重命名集合将设置一个指向基础集合的标准别名,以便现在可以使用新名称在查询、索引和管理操作中引用相同(未修改)的集合。”。使用别名是处理此问题的正确方法,不会造成重大停机。感谢@MatsLindh,我们可以创建与集合同名的别名吗?在我们的例子中:main_collection?我会尽量避免这种情况,但是重命名
main_collection
和创建别名应该是一个相当快速的过程,因此停机时间应该是有限的(可能几秒钟?先测试一下)。问题是您有对main\u collection
的硬编码引用,否则您可以创建aliased\u collection\u name
,更新配置以指向该集合,然后根据需要在以后交换该集合。