更新阿里云ES实例的同义词词典常见问题

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,恶意文件检测 1000次 1年
对象存储 OSS,内容安全 1000次 1年
简介: 更新阿里云ES实例的同义词词典时,经常会遇到各种问题,下面对请求语法还有具体含义,以及一些具体限制做了具体的说明,还有一些常见的问题。

请求语法

请求方法+URL

PUT /openapi/instances/[InstanceId]/synonymsDict HTTP/1.1

请求参数

名称

类型

位置

是否必选

示例值

描述

InstanceId

String

Path

es-cn-nif1q9o8r0008****

实例ID。

clientToken

String

Query

5A2CFF0E-5718-45B5-9D4D-70B3FF****

用于保证请求的幂等性。由客户端生成该参数值,要保证在不同请求间唯一,最大不超过64个ASCII字符。

RequestBody

Json

具体见

RequestBody

body内容

RequestBody

RequestBody中还需填入以下参数。

参数

类型

是否必须

示例值

描述

name

String

test.txt

上传的词典文件名称,必须为TXT类型,这个是文件存储在ES集群

中的文件名称,如果是更新,必须和之前集群的同义词文件名相同,

可能和key名称不一样。

ossObject

Array

OSS的开放存储文件描述。当sourceType为OSS时,必填。

└bucketName

String

search-cloud-test-cn-****

OSS存储空间(Bucket)名称。

└key

String

oss/dic_0.txt

词典文件在OSS Bucket中的存储路径,包括目录和同义词文件名,

文件名后缀可以是dic。

sourceType

String

OSS

词典文件来源类型,可选值:OSS(使用OSS开放存储,覆盖更新同

名文件的内容)、ORIGIN(保留之前已经上传的词典,也就是追加文件,一般追加)。

type

String

SYNONYMS

要更新的词典类型,固定为SYNONYMS。

示例

请求示例

常见问题

An error occurred while retrieving the OSS file information. Check the OSS configuration and try again

1.OSS文件没有公共读权限。

2.sourceType配置了OSS(同名文件数据覆盖),但是name和集群上同义词文件不一致。

3.type配置的不是SYNONYMS。

The specified format is invalid. Check the parameter format and try again

1.body格式错误,常见的就是body最外层的大括号([ ])没写。

The cluster is running tasks or in an error status. Try again later

1.集群不是健康状态。

The specified dictionary name is invalid

1.name(ES集群文件名)必须是txt类型,如果是dic就会报这个错误。

接口调用成功,但是集群重启后,同义词文件内容没有更新

1.sourceType设置为ORIGIN,并且name和集群同义词文件名一致,导致追文件没加文件,导致有同名文件存在,所以集群重启后是没有结果的。


参考文档

https://help.aliyun.com/document_detail/151549.htm?spm=a2c4g.11186623.0.0.1842461cDGpdYr#doc-api-elasticsearch-UpdateSynonymsDicts

相关实践学习
借助OSS搭建在线教育视频课程分享网站
本教程介绍如何基于云服务器ECS和对象存储OSS,搭建一个在线教育视频课程分享网站。
相关文章
|
5月前
|
存储 SQL 运维
Elasticsearch 查询革新:探索 Wildcard 类型的高效模糊匹配策略
Elasticsearch 查询革新:探索 Wildcard 类型的高效模糊匹配策略
231 0
|
Linux 异构计算 索引
释放搜索潜力:基于ES(ElasticSearch)打造高效的语义搜索系统,让信息尽在掌握
释放搜索潜力:基于ES(ElasticSearch)打造高效的语义搜索系统,让信息尽在掌握
|
存储 索引
创建 elastic search 索引的一些注意事项
创建 elastic search 索引的一些注意事项
|
NoSQL MongoDB
MongoDB(14)- 查询 null 字段或缺少某个字段的文档
MongoDB(14)- 查询 null 字段或缺少某个字段的文档
344 0
|
存储 前端开发 Java
ElasticSearch快速入门之创建索引库、创建映射、创建文档、搜索文档
ElasticSearch快速入门之创建索引库、创建映射、创建文档、搜索文档
385 0
|
SQL 索引
白话Elasticsearch03- 结构化搜索之基于bool组合多个filter条件来搜索数据
白话Elasticsearch03- 结构化搜索之基于bool组合多个filter条件来搜索数据
297 0
|
存储 搜索推荐 索引
Elasticsearch 如何处理索引的数据比较和数据匹配?具体步骤是怎样的?
Elasticsearch 如何处理索引的数据比较和数据匹配?具体步骤是怎样的?
221 0
|
数据库
通过互联网搜索接口更新拼写语法库的设计
通过互联网搜索接口更新拼写语法库的设计
69 0
|
自然语言处理 Perl
Elasticsearch 自定义分词同义词环节的这个细节不大好理解......
扩展背景描述: 这是 Elasticsearch 自定义分词 Text analysis 章节 Token filter reference 小节的 同义词 token 过滤 (Synonym token filter)的一个参数。 的确,官方文档讲解的不详细。 我们彻底解读一下。
625 0
Elasticsearch 自定义分词同义词环节的这个细节不大好理解......
|
SQL 自然语言处理 关系型数据库
PostgreSQL 如何高效解决 按任意字段分词检索的问题 - case 1
背景 在有些应用场景中,可能会涉及多个字段的匹配。 例如这样的场景,一张表包含了几个字段,分别为歌手,曲目,专辑名称,作曲,歌词, 。。。 用户可能要在所有的字段中以分词的方式匹配刘德华,任意字段匹配即返回TRUE。 传统的做法是每个字段建立分词索引,然后挨个匹配。
9041 0