在通过同义词文件方式使用同义词时,您需要先上传同义词文件。本文介绍上传同义词文件的注意事项和操作步骤。
注意事项
- 上传同义词前需确保集群处于正常状态,该操作会触发集群滚动重启,在重启过程中后台会进行同义词词典的下发,生效时长与集群规模、数据量及负载情况等有关系,建议在业务低峰期操作。
- 如果集群索引存在副本分片且集群负载处于正常水平(CPU使用率在60%左右,堆内存使用率在50%左右,load_1m低于CPU核数),一般情况下,在集群变更过程中可持续对外提供服务。
- 如果集群负载过高且索引没有副本,同时业务中存在大量的写入或查询等场景,在集群变更过程中,业务可能会出现偶发的访问超时现象。建议在客户端访问机制中配置重试机制,以减小对业务的影响。
- 假设现存索引
index-aliyun
使用了aliyun.txt同义词文件,当aliyun.txt文件内容变更并重新上传后,现存索引不会动态加载更新后的同义词词典。请在同义词词典内容发生变化后进行索引重建操作,否则可能会造成只有新增数据使用新词典的情况。您也可以使用elasticsearch-analysis-dynamic-synonym插件实现词典动态加载,详细信息请参见阿里云Elasticsearch实现同义词动态更新最佳实践。 - 同义词文件要求每行只有一个同义词表达式(表达式支持Solr规则和WordNet规则),保存为UTF-8编码的TXT文件,示例如下。
西红柿,番茄 =>西红柿,番茄 社保,公积金 =>社保,公积金
- 如果停用词中包含同义词文件中指定的词,上传同义词文件或进行其他操作时,主日志中会出现错误信息。
操作步骤
说明 如果您需要获取已经上传过的词库文件,可直接单击对应文件的
图标进行下载。

后续步骤
等待实例的状态变为正常后,登录Kibana控制台创建索引、校验同义词,并上传测试数据进行搜索测试。创建索引时需要配置settings和mapping,并且需要在settings中配置"synonyms_path": "analysis/your_dict_name.txt"
。详细信息,请参见使用同义词以及官方Using Synonyms文档。
相关文档
更新同义词词典的API文档:UpdateSynonymsDicts