Sitecore内容搜索中的搜索索引刷新和搜索索引重建之间有什么区别

时间:2019-06-16 02:36:29

标签: indexing solr sitecore sitecore9

谁能告诉我两者之间的区别 我可以看到执行时间方面的差异,但我希望从功能角度来看有所不同。

 void Rebuild();
        void Rebuild(IndexingOptions indexingOptions);
        Task RebuildAsync(IndexingOptions indexingOptions, CancellationToken cancellationToken);
        void Refresh();
        void Refresh(IIndexable indexableStartingPoint, IndexingOptions indexingOptions);
        void Refresh(IIndexable indexableStartingPoint);
        Task RefreshAsync(IIndexable indexableStartingPoint, IndexingOptions indexingOptions, CancellationToken cancellationToken);





 void Update(IEnumerable<IndexableInfo> indexableInfo);
        void Update(IEnumerable<IIndexableUniqueId> indexableUniqueIds);
        void Update(IEnumerable<IIndexableUniqueId> indexableUniqueIds, IndexingOptions indexingOptions);
        void Update(IIndexableUniqueId indexableUniqueId);
        void Update(IIndexableUniqueId indexableUniqueId, IndexingOptions indexingOptions);

1 个答案:

答案 0 :(得分:0)

Rebuild:如果您进行了任何更改,例如...更改schema.xml。所做的更改就像您添加了一个字段并更改了字段的字段类型一样。 在这种情况下,您需要重建索引以反映更改。

刷新:如果要添加更多或更新现有索引的数据。您将刷新它。 例如:您已使用Solr的DIH功能并为数据库建立索引。如果数据库的数据被添加或修改了值,则需要在Solr索引中刷新它。您将在此处通过调用Solr的Delta导入来使用刷新。

更新:您可以通过传递文档的唯一ID来指定要更新的文档,以及在需要更新任何特定字段的情况下要更新的所有字段。

注意:我没有使用上面的api。我建议您仔细阅读api文档,并详细了解特定的api。