如何基于实时数据在Sitecore内容搜索(Lucene)中创建构面?

时间:2023-02-06 03:04:26

With Sitecore Content Search configuration is it possible to support the addition of a field which is populated with a value at search time, not index time? The population would be from an in-memory data structure for performance.

使用Sitecore内容搜索配置是否可以支持添加一个字段,该字段在搜索时填充值,而不是索引时间?人口将来自内存数据结构以提高性能。

Essentially without re-indexing the values need to be updated/accessed, examples for this real time field would be Facebook Likes, In Stock, or Real Time Pricing. This data would then be used for faceting such as items with a range of Facebook likes, in-stock versus out-of-stock, or real time price facets.

基本上没有重新索引值需要更新/访问,这个实时字段的示例将是Facebook喜欢,有库存或实时定价。然后,该数据将用于分面,例如具有一系列Facebook喜欢,库存与缺货或实时价格方面的项目。

2 个解决方案

#1


1  

The content search api does the searching on an iindexable, so I would look into that - you'd probably have to implement this interface yourself. More info here:

内容搜索api在iindexable上进行搜索,所以我会调查一下 - 你可能必须自己实现这个界面。更多信息:

http://www.sitecore.net/learn/blogs/technical-blogs/sitecore-7-development-team/posts/2013/04/sitecore-7-search-operations-explained.aspx

http://www.sitecore.net/learn/blogs/technical-blogs/sitecore-7-development-team/posts/2013/04/sitecore-7-search-operations-explained.aspx

If you need to search on data that is not in the index I would question whether sitecore search is the best option here. If the data needs to be searched in real time then maybe a database would suffice.

如果您需要搜索不在索引中的数据,我会质疑sitecore搜索是否是最佳选择。如果需要实时搜索数据,那么数据库就足够了。

If the data set is large and you need realtime access then maybe a nosql database such as MongoDB might be the right choice. Hope this has given you some ideas and you reach a solution

如果数据集很大并且您需要实时访问,那么像MongoDB这样的nosql数据库可能是正确的选择。希望这能为您提供一些想法,并为您提供解决方案

#2


0  

You can leverage the Sitecore dynamic index. The idea is to query your "large" index from within your in-memory index which you'll use dynamically. The implementation is relatively easy.

您可以利用Sitecore动态索引。我们的想法是从您将动态使用的内存索引中查询“大”索引。实施相对容易。

More info: http://www.sitecore.net/en-gb/learn/blogs/technical-blogs/sitecore-7-development-team/posts/2013/04/sitecore-7-dynamic-indexes.aspx

更多信息:http://www.sitecore.net/en-gb/learn/blogs/technical-blogs/sitecore-7-development-team/posts/2013/04/sitecore-7-dynamic-indexes.aspx

#1


1  

The content search api does the searching on an iindexable, so I would look into that - you'd probably have to implement this interface yourself. More info here:

内容搜索api在iindexable上进行搜索,所以我会调查一下 - 你可能必须自己实现这个界面。更多信息:

http://www.sitecore.net/learn/blogs/technical-blogs/sitecore-7-development-team/posts/2013/04/sitecore-7-search-operations-explained.aspx

http://www.sitecore.net/learn/blogs/technical-blogs/sitecore-7-development-team/posts/2013/04/sitecore-7-search-operations-explained.aspx

If you need to search on data that is not in the index I would question whether sitecore search is the best option here. If the data needs to be searched in real time then maybe a database would suffice.

如果您需要搜索不在索引中的数据,我会质疑sitecore搜索是否是最佳选择。如果需要实时搜索数据,那么数据库就足够了。

If the data set is large and you need realtime access then maybe a nosql database such as MongoDB might be the right choice. Hope this has given you some ideas and you reach a solution

如果数据集很大并且您需要实时访问,那么像MongoDB这样的nosql数据库可能是正确的选择。希望这能为您提供一些想法,并为您提供解决方案

#2


0  

You can leverage the Sitecore dynamic index. The idea is to query your "large" index from within your in-memory index which you'll use dynamically. The implementation is relatively easy.

您可以利用Sitecore动态索引。我们的想法是从您将动态使用的内存索引中查询“大”索引。实施相对容易。

More info: http://www.sitecore.net/en-gb/learn/blogs/technical-blogs/sitecore-7-development-team/posts/2013/04/sitecore-7-dynamic-indexes.aspx

更多信息:http://www.sitecore.net/en-gb/learn/blogs/technical-blogs/sitecore-7-development-team/posts/2013/04/sitecore-7-dynamic-indexes.aspx