Sitecore索引重建实践

时间:2013-07-12 07:46:15

标签: sitecore sitecore6 lucene

在我们的sitecore项目(6.6.0 rev.130404)中,我们有超过200万个sitecore项目。我们配置了几个Lucene索引(每个索引都包含这些项的子集)。我们面临的问题是重新构建这些索引所需的时间。特别是使用Sitecore的QuickSearch索引,除了我们的自定义索引之外,重建该索引可能还需要将近一整天。

在日常运营中维护大型sitecore索引的常规做法是什么?您需要多久重建一次索引?当你这样做时,如何处理长网站停机时间(索引重建使索引脱机)?

3 个答案:

答案 0 :(得分:4)

如果您有多台服务器,您可以从负载均衡器中取出其中一台服务器(或阻止其以任何其他方式提供内容),并在此服务器上重建索引。完成后,只需将其放回负载均衡器中即可。

您也可以尝试使用Sitecore Lucene Refresher

请查看how to maintain sitecore lucene indexes in huge content delivery webfarm了解更多选项。

答案 1 :(得分:1)

我想到的一种方法是,您可以根据网站上的部分/页面/内容细分索引,具体取决于您拥有的数据/结构类型,以及如何将它们细分为多个部分,所以你将有2-20,30,40等索引,可以使用<root>标记为ADBC配置中的每个索引配置它们,这样,你应该知道网站的哪个部分您进行了更新,如果需要,您只能在该索引上进行重建。

一般情况下,你不需要一直重建所有索引,据我所知/记得发布会正确地推送更新的索引,但它不会重建整个事情。试。

我认为重建整个索引的唯一情况,如果您在新环境中安装了站点,或者由于某种原因从服务器删除了索引,或者某些类似的情况....

答案 2 :(得分:1)

如果升级到Sitecore 7.2,则可以使用SwitchOnRebuildLuceneIndex索引。这在您执行索引重建操作时提供了工作索引。

<index id="your_index" type="Sitecore.ContentSearch.LuceneProvider.SwitchOnRebuildLuceneIndex, Sitecore.ContentSearch.LuceneProvider">
...
</index>

有关详细信息,请参阅John West的帖子:http://www.sitecore.net/deutsch/Community/Technical-Blogs/John-West-Sitecore-Blog/Posts/2013/05/Sitecore-7-Rebuild-Lucene-Indexes-in-Temporary-Subdirectories.aspx