是时候用 ES 拯救发际线啦

对于多语言处理,当前有没有什么好的方案推荐?

Elasticsearch | 作者 wssmao | 发布于2019年06月14日 | 阅读数:1368

构建索引时,所处理的文本,涉及多种语言,如 英文、中文、德文、法文、韩文、日文、西班牙文、阿拉伯文、蒙古文等。 

社区里有没有遇到过类似场景,是如何实现的?
  
对于多语言处理,当前有没有什么好的方案推荐?
 
 
已邀请:

God_lockin

赞同来自:

存的时候:
同一个字段包含了乱七八糟各种文字吗?还是说可以明确的知道某一段数据是那种语言
 
取的时候:
同一个条件做多语言匹配吗?需要同一个词的不同语言的说法吗?

God_lockin

赞同来自:

如果可以确定数据的语言(存在对应的字段,比如cn:“今天天气不错”,en:“Good day today”),query内容的语言,直接可以通过指定对应的query来解决
"query":{"match":{"cn":"天气不错"}}
 
但是需要注意的是每个字段的mapping里要加上对应语言的分词器
 
如果不能确定搜索条件的语言的话,可以考虑multiplematch之类的全文匹配,也需要对每个语言的字段加设自己对应语言的分词器

xufenxu

赞同来自:

简单点,ngram分词吧,多语言常用做法

要回复问题请先登录注册