2013-12-10 58 views

回答

1

我很确定,从我在Solr中看到的需要在更改solr schema.xml中文档中的字段后重新索引。发布后,您需要重新加载核心。如果查询仍然有效后,你可能没问题,但我想你会需要运行reindex是安全的。

+0

你是什么意思,“重新加载核心”也,我可以只是做一个就地指数,或者我需要删除并重新创建整个索引,这将导致错过读取? –

+0

当我说重新加载时,我的意思是:http://wiki.apache.org/solr/CoreAdmin(在RELOAD操作下)。因为索引结构不同,所以可能需要重新创建整个索引,除非在那里有一些魔术来删除我不知道的字段。 – bcoverston

+0

DSE具有需要用于reindex的特定参数:http://www.datastax.com/docs/datastax_enterprise3.2/solutions/dse_search_upload#reloading-a-solr-core –

1

如果您不重新编制索引,则现有的Solr索引字段值将保留,占用空间并响应查询。新的插入或更新将不会有已删除的字段。正如本说的那样,这可能没问题。

Solr reindex将删除所有旧的字段值。

0

理想情况下,如果您更改schema.xml中的任何内容,并希望所做的更改反映出您必须执行重新索引。但是,重新编制索引完全取决于应用程序用例和您拥有的记录数。如果删除索引的原因是由于缺乏使用,那么不需要重新索引,因为没有人会搜索它们。旧的索引需要一些空间,但它应该没问题。另外,在重新编制索引时要小心,因为它很大程度上取决于您拥有的文档数量。如果你有大约10M以上的地方,我会不建议重新索引,因为它是CPU & I/O绑定操作。如果文件数量少,那么你一定会继续做下去。

相关问题