阿里云Elasticsearch(简称ES)支持上传自定义的同义词词典文件。该文件作用于阿里云ES的同义词库后,新的索引将会采用更新后的词库进行搜索。
注意事项
在上传同义词文件时,请注意:
- 上传同义词文件操作会触发集群重启,在重启过程中后台会进行同义词词典的下发,生效时间与集群中节点的数量相关。
- 假设现存索引
index-aliyun
使用了aliyun.txt同义词文件,当aliyun.txt文件内容变更并重新上传后,现存索引不会动态加载更新后的同义词词典。请在同义词词典内容发生变化后进行索引重建操作,否则可能会造成只有新增数据使用新词典的情况。 - 同义词文件要求每行只有一个同义词表达式,保存为
utf-8
编码的.txt
文件,示例如下。西红柿,番茄 =>西红柿,番茄 社保,公积金 =>社保,公积金
- 如果阿里云ES的停用词中包含同义词文件中指定的词,上传同义词文件或进行其他操作时,主日志中会出现错误信息。
操作步骤
后续步骤
setting
和mapping
,并且需要在setting
中配置"synonyms_path": "analysis/your_dict_name.txt"
,详情请参见配置同义词以及官方ES的Using Synonyms文档。