在 Azure 搜索中使用多种语言进行搜索
Search with multiple languages on Azure Search
我有一个数据库,其中包含项目的关键字,以及它们在不同语言中的本地化(目前支持大约 30 种不同的语言),如果该项目有的话。我希望能够使用 Azure 搜索来搜索这些项目。但是,我不确定如何设置索引架构。在这种情况下,我想到了两个解决方案:
要么我会
1) 每种语言都有不同的索引,并为该索引使用该语言的分析器。后面我要用这个索引搜索的时候,还需要检测用户查询的语言,然后在那个语言对应的索引上搜索。
或
2) 有一个索引,其中有很多字段对应于项目的不同本地化。 Azure 搜索支持在搜索时设置语言优先级,因此了解用户的语言可能会派上用场,但不一定是必须的。
我对这些东西有点陌生,所以任何指示、链接、想法等都会有很大的帮助,即使它不能直接回答问题。
选项 2 是我们推荐的选项(每种语言有一个索引和一个字段)。您可以通过使用评分配置文件分配字段权重来设置一些静态优先级。如果您能够检测到查询中使用的语言,则可以使用 searchFields 选项将搜索范围限定为该语言。
我有一个数据库,其中包含项目的关键字,以及它们在不同语言中的本地化(目前支持大约 30 种不同的语言),如果该项目有的话。我希望能够使用 Azure 搜索来搜索这些项目。但是,我不确定如何设置索引架构。在这种情况下,我想到了两个解决方案:
要么我会
1) 每种语言都有不同的索引,并为该索引使用该语言的分析器。后面我要用这个索引搜索的时候,还需要检测用户查询的语言,然后在那个语言对应的索引上搜索。
或
2) 有一个索引,其中有很多字段对应于项目的不同本地化。 Azure 搜索支持在搜索时设置语言优先级,因此了解用户的语言可能会派上用场,但不一定是必须的。
我对这些东西有点陌生,所以任何指示、链接、想法等都会有很大的帮助,即使它不能直接回答问题。
选项 2 是我们推荐的选项(每种语言有一个索引和一个字段)。您可以通过使用评分配置文件分配字段权重来设置一些静态优先级。如果您能够检测到查询中使用的语言,则可以使用 searchFields 选项将搜索范围限定为该语言。