我正在使用Sitecore 7搜索,我在代码中重建索引,我已经为此创建了一个代理,工作正常,索引重建需要15秒,我注意到索引重建时我无法搜索任何内容内容,搜索给我0结果,我认为重建索引时索引文件从索引文件夹中删除,是吗?如何在不删除现有索引文件的情况下重建索引?
答案 0 :(得分:5)
您是正确的,当发出重建时,将删除现有索引。为避免这种情况,您需要将索引类型从默认LuceneIndex
更改为SwitchOnRebuildLuceneIndex
<index id="sitecore_master_index" type="Sitecore.ContentSearch.LuceneProvider.LuceneIndex, Sitecore.ContentSearch.LuceneProvider">
.. ..到
<index id="sitecore_master_index" type="Sitecore.ContentSearch.LuceneProvider.SwitchOnRebuildLuceneIndex, Sitecore.ContentSearch.LuceneProvider">
这将创建一个二级索引文件夹,在该文件夹中将进行重建。当重新索引完成后,它将交换两个索引文件夹,以便您不会看到搜索的任何停机时间。
Solr提供程序也有一个等效的版本。