Azure搜索构面和过滤器

时间:2016-10-12 13:41:29

标签: e-commerce azure-search

我在我的电子商务网站上使用Azure搜索,现在想要实现过滤,我无法选择正确的方法。问题是我有非常不同的产品类型,因此他们有各种属性(属性),我不想创建具有50个属性字段的索引来面对它们。另一种方法 - 我可以定义一些属性(如Attribute1,Attribute2 ......),然后根据指定的值确定它们的'Key'名称,但听起来也不是那么好。是否有一些常见的或经过检查的方法来在电子商务网站上构建过滤器?

1 个答案:

答案 0 :(得分:1)

如果您有50个具有稀疏值的字段,Azure搜索将会很好。假设稀疏性具有相对较低的per-facet基数,它不应该对性能产生不良影响,并且通过显式地将东西建模为字段,您可以保持来自具有显式字段的漂亮而干净的编程模型。

假设所有方面具有相同的数据类型或可以轻松分组,属性映射事物将起作用。

你可以为字符串构面做的另一件事是在构面值中有一个前缀(例如Cameras / Canon,Memory / MiniSD等)。这为您提供了父范围内每个值的计数。如果您还在单独的字段中具有父作用域(例如,相机,内存),则可以根据需要按整个作用域进行过滤。这很好地概括为分层方面(只要它们都是字符串)。 Here is a blog post探索了这种技术。