我正在将弹性搜索集成到资产跟踪应用程序中。当我最初设置映射时,我设想“品牌”字段是像“日立”或“福特”这样的单项字段。相反,我发现实际数据中的品牌字段包含多个术语,例如:“MB 7 A/B”、“B-7”甚至“Brush Bull BB72X”。
我有一个自动完成组件设置,现在我配置为对 edgeNGram 字段执行自动完成,并针对 nGram 字段执行实际搜索。我设置它的方式完全没用,因为用户希望搜索结果仅限于自动完成匹配的内容。
关于设置我的映射以支持自动完成和随后针对这样的多个术语字段的搜索的最佳方式有什么建议吗?我正在考虑针对关键字字段进行术语查询,或者可能是使用“和”作为运算符的匹配查询?我还必须处理像“B-7”这样的连字符。