【发布时间】:2021-08-02 11:30:20
【问题描述】:
我们正在使用 AWS 的 elasticsearch 服务。我们有一个与弹性搜索域关联的自定义同义词包。该文件位于 s3 存储桶中,当文件更新时,它会触发一个更新 AWS 中的包版本的 lambda。我们遵循https://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/custom-packages.html 的文档,到目前为止,所有这些都非常适合上传和更新包的新版本。但是,aws elasticsearch 自定义包的工作方式是,使用自定义包的每个域也存储自己的文件副本。为了让搜索行为保持可预测性,域会继续使用其当前的包版本,直到您明确更新它们。
问题是我找不到任何方法来以编程方式告诉域使用新版本的包。这就像在控制台中单击 2 次,但我终其一生都无法从我的自动化代码中找到一种方法。 update_package 方法只是更新包版本,它不会告诉关联的域使用新版本。
我们正在寻找一种以编程方式告诉 AWL 弹性搜索域更新关联自定义同义词文件版本的方法。
【问题讨论】:
-
你试过
_opendistro/_refresh_search_analyzersAPI吗? (在第 6 点中描述了 here) -
我做到了 - 我认为这告诉索引使用新版本的包,但实际上仍然没有使新版本在 aws 域上可用。我这里的理解是,当你进入aws控制台,选择域,选择包,点击
update package它会将新版本的包上传到域,然后调用_opendistro/_refresh_search_analyzers。这是我努力实现自动化的第一部分。
标签: amazon-web-services elasticsearch aws-elasticsearch