重新编制弹性索引搜索和删除旧记录

2024-06-02 08:45:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我正试图找到一个正确的方法,如何重新索引我的弹性搜索索引没有停机时间。我使用python library与ES交互。ES的版本是6.4。在

以下是我的工作流程:

  1. 创建两个别名一个用于搜索,一个用于索引。在
  2. 将搜索别名指向old_indexnew_index
  3. 将索引别名指向new_index
  4. 呼叫reindex API
  5. 等待重新索引过程并删除old_index的搜索别名
  6. 删除old_index

不过,在我重新编制索引时,这有一个以重复记录形式出现的警告。记录可以在old_indexnew_index中。在

有什么方法可以在记录被移动时自动删除new_ index?在

我在尝试这样的事情。显然,这将删除new_index中的所有记录,而不是{}

POST _reindex
{
  "source": {
    "index": "old_index"
  },
  "dest": {
    "index": "new_index",
  },
  "script": {
    "source": "ctx.op = 'delete'",
    "lang": "painless"
  }
}

Tags: 方法版本sourcenewindexes记录library