【问题标题】:Multiple analyzers for a single field in a search index of Azure Cognitive SearchAzure 认知搜索搜索索引中单个字段的多个分析器
【发布时间】:2022-12-17 18:09:51
【问题描述】:

我们需要两种不同类型的搜索(基于用户输入),部分搜索和精确搜索,用于我们拥有的几个字段,并且对于相同的要求,我们需要为每个字段使用两个不同的分析器来生成所需的输出。

现在,问题是,我无法为单个字段配置 2 个分析器。对我来说唯一的选择是同时创建两个不同的索引,然后根据用户输入查询各自的索引,但显然,这不是正确的解决方案,它不可扩展,主要是冗余数据并且几乎占用两倍的空间。

我正在尝试使用不同的分析器在同一索引中创建一个重复字段,并根据用户输入使用它们的输出,但我不确定如何在索引中配置它。字段的名称是查询期间用于搜索的名称。我是否有可能拥有 2 个不同名称的不同字段,它们实际上指向一个字段但具有不同的分析器?

【问题讨论】:

  • 您是使用索引器还是使用 REST API 直接推送文档?

标签: azure azure-cognitive-search


【解决方案1】:

您可以有 2 个不同名称的不同字段,它们实际上指向一个具有两个不同分析器的字段。这可以使用索引器定义中的字段映射来完成。

  1. 我创建了如下所示的索引,
  2. 如上面的屏幕截图中突出显示的那样,我使用了两个名为 cont01 和 cont02 的新字段。
  3. 这两个新字段将指向具有两个不同分析器的字段 merged_content。
  4. 在索引器定义中,我配置了字段映射,如下所示,
  5. Ran indexer 和结果如下所示, 参考link

【讨论】:

    猜你喜欢
    • 2019-06-19
    • 1970-01-01
    • 1970-01-01
    • 2022-01-24
    • 2021-06-06
    • 2021-10-18
    • 2023-01-05
    • 1970-01-01
    • 2021-02-03
    相关资源
    最近更新 更多