Solr 1.4企业级搜索服务器建议对核心副本执行大量更新,然后将其交换为主核心。我遵循以下步骤:
我遇到的问题是,在步骤1中创建的核心中没有任何数据。如果我要对所有东西和厨房水槽做一个完整的索引,那就没问题了,但如果我只想更新一个(大)文件的子集 - 这显然不会起作用。
(我可以合并核心,但我正在尝试做的部分是删除任何已删除的文档而不尝试列出它们。)
我缺少CREATE操作的标志吗? Solr Wiki page for CoreAdmin在细节上有点稀疏。
solr-user上有人建议使用复制。在这种情况下使用它(据我的理解)需要以下步骤:
更简单的基于复制的设置是配置永远是主设备的永久PREP核心。 MAIN核心(根据需要在尽可能多的服务器上)可以成为PREP核心的从属。可以根据需要快速或慢速地在PREP核心上进行索引。
我想出的另一个想法是这个(也涉及永久的PREP核心):
答案 0 :(得分:3)
我创建了克隆操作的想法,它执行索引和配置数据的文件系统副本,然后创建一个新的。存在一些锁定问题,您必须具有对索引的文件系统访问权限,但它确实有效。这确实给你一个很好的副本,你可以使用配置文件。
我想的越多,你就可以创建一个新的核心,然后这样做:
从主命令:http://slave_host:port/solr/replication?command=fetchindex强制从属设备上获取fetchindex 可以传递额外的属性'masterUrl'或其他属性,如'compression'(或标记中指定的任何其他参数),以便从主服务器进行一次性复制。这样就不需要对从机中的主机进行硬编码。
然后从生产中填充新的,然后应用您的更新,然后交换回来!