【问题标题】:How to re-create indexes in elasticseach如何在弹性搜索中重新创建索引
【发布时间】:2021-04-18 12:23:03
【问题描述】:

我正在开发一个使用 AWS 无服务器开发的项目,DB 是发电机和弹性搜索,用于前端反应和 nodeJS 用于后端。它是由其他一些开发人员开发的,现在我是其中的一员,没有任何 KT。我设法让项目启动并运行。到现在为止的旅程。

在 elasticsearch 中有一个叫做重新索引数据的事情,应该在这个项目的每个月底发生。当我对这些事情不熟悉时,我犯了一些错误,并且索引似乎以某种方式损坏了。我之所以这样评论,是因为,我在上个月的索引上获得了相同查询的数据,但在为当月创建的最近索引上没有数据。

我不能使用旧索引,因为在该索引之上创建了一些额外的数据,我现在应该得到完整的数据。

所以我打算重新创建索引以确保我拥有新索引中的所有数据,包括最近创建的最新记录。

有人可以帮助我了解如何做到这一点。 我在网上遇到了很多帮助文档和教程,但没有像我正在寻找的那样。 如果这是其他问题的重复,我感到非常抱歉。可能是由于对这些技术不熟悉,我的行话与我应该在这里写的内容不匹配并获得帮助。

如果需要其他信息,请告诉我。

【问题讨论】:

  • 请添加您用于重新索引的命令和您用于查询创建的新索引的命令。
  • 不确定我是否给您完整的详细信息,但我被指示执行以下 2 个查询以重新索引事物 1) 创建新索引 "PUT prod..historical.actions--”,我猜它还没有包含任何数据 2)对于映射数据“PUT prod..historical.tasks-2020-12/_alias/api.stage..today.tasks { "filter": { "term": { "snapshotDate": "2020-12-03" } } }" 我猜,日期为“2020-12-03”的快照中的数据正在被复制到新索引中在第一步中创建。
  • 想知道,只是为了获取完整的数据,你想重新索引吗?在这种情况下,从先前和当前索引(搜索多个索引)中查询(搜索),对您没有帮助吗?请使用您正在尝试的请求和预期结果更新故事以获得更好的答案

标签: elasticsearch amazon-dynamodb


【解决方案1】:

很难理解你到底想要什么,但是如果你想复制现有索引,你可以这样做:

  1. Create index: 如果需要,请使用任何前期映射。
    PUT <destination_index_name>
  1. 复制数据(re-index操作):
    POST _reindex
    {
      "source": {
        "index": "source_index_name"
      },
      "dest": {
        "index": "destination_index_name"
      }
    } 

【讨论】:

  • 据我了解,这不是 @Sunil 想要的
  • 简单地说,我从现有索引中创建了一个索引(实际上不是我,而是我的一个团队成员)。不幸的是,我没有在新创建的索引处看到源索引中的所有数据。这可能是什么原因?无论是什么原因,如果我以适当的方式重做相同的练习,我是否能够获得源索引中的所有数据?为了做同样的事情,我需要在 Kibana 控制台执行哪些命令或查询来实现它?除了 Kibana 控制台,我们不知道执行这些查询的任何其他方式。我才刚接触这项技术。
  • 顺便说一下@Ankit,我已经尝试了您的建议,但所有文档都出现了错误。 "cause" : { "type" : "mapper_parsing_exception", "reason" : "在 ID 为 '20210305_b3120b67-778c-490e-a763-e790a5843912' 的文档中解析类型为 [long] 的字段 [createdDate] 失败。预览字段值: '2020-05-18T11:42:01.599Z'", "caused_by" : { "type" : "illegal_argument_exception", "reason" : "对于输入字符串:\"2020-05-18T11:42:01.599Z\ "" } }
  • 你好@SunilYerra,你得到“mapper_parsing_exception”这意味着目标索引的映射没有正确定义。你可以尝试使用正确的映射,看看它是否有效?您可以使用“GET /index-mappings/_mapping”查看您尝试复制的旧索引的映射。
猜你喜欢
  • 1970-01-01
  • 2018-07-15
  • 2018-03-27
  • 2019-09-28
  • 2022-08-17
  • 1970-01-01
  • 2020-08-16
  • 1970-01-01
  • 2016-02-24
相关资源
最近更新 更多