gpt4 book ai didi

ruby-on-rails - 更新生产中的 ElasticSearch 映射(轮胎)

转载 作者:行者123 更新时间:2023-12-04 06:09:30 27 4
gpt4 key购买 nike

我想清楚地了解如何处理以下情况:

I'm adding or removing an attribute from an activerecord model, so I want to update its mapping in ElasticSearch, in production.

据我了解,我应该...

1- 创建一个新索引并从 mysql 中导入所有内容

这是正确的命令吗? rake 环境 tire:import CLASS='Bow' INDEX='new-bows'为了创建正确的映射,我应该已经更新了模型中的映射,对吗?

2- 删除旧映射并为 new-bows 创建一个名为 bows 的别名

我会那样做,对吗?

old_index_name = Bow.tire.index.name
Bow.tire.index.delete
alias = Tire::Alias.new
alias.name(old_index_name)
alias.index('new-bows')
alias.save

3-重启应用


我是不是遗漏了什么,或者是否有更简单的方法来使用 Tire 实现我想要的?

我应该在什么时候删除旧索引?可以在创建同名别名之前,还是之后创建?

最佳答案

您应该保留旧索引,直到您确定新索引 100% 符合您的要求。如果不是这种情况,您可以翻转别名。

Tire 测试套件中有一个用于“翻转别名”的集成测试。

关于ruby-on-rails - 更新生产中的 ElasticSearch 映射(轮胎),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15374330/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com