针对按月分片每月近 1ooow 的记录,其中有一个字段是 姓名 (中文居多,存在一部分繁日英,长度在[2, 50]左右,大部分都是 3 个字符)
现在业务侧要求尽量实现:
1 、针对原纪录的全模糊查询,即只要输入的字符串是某个姓名的子序列,就将其捞出来;
例如,对于输入的 "张 aた" 是要匹配到 "张三 abきたない",因为不涉及到原字符的转换,这里直接使用了 1gram+match_phrase_prefix
来实现了
2 、(目前遇到的问题) ,现在想要针对中简繁、日文、汉语等汉字系支持对应拼音、罗马音的模糊搜索, 例如,对于输入的 "张 san a ki t" 是要能够 匹配到 "张三 abきたない" 的; 即实际上要做到分词结果是 "张三 abきたない: 张 三 z h a n g s a n a b き た な い k i t a n a i" 的实现(当然这个我不是很确定是否是唯一解,只是认为如果能够达到这样的分词结果那就能满足我现在的搜索要求了)
我的问题是,如何实现这样的分词器呢?
icu_transform
等,貌似没法保留原字符串(或者这种场景下的自定义分词器该如何实现呢)先感谢 dalao 们回复
1
teiboku1 141 天前
自己实现一个 ingest pipeline 就行
|