当前位置: 首页 > 知识库问答 >
问题:

使用Python对elasticsearch文档进行批量更新

乐正德华
2023-03-14

我有如下elasticsearch文档,其中我需要根据creationtime currentdate更正年龄值

年龄=创建时间-当前日期

:

hits = [
   {
      "_id":"CrRvuvcC_uqfwo-WSwLi",
      "creationtime":"2018-05-20T20:57:02",
      "currentdate":"2021-02-05 00:00:00",
      "age":"60 months"
   },
   {
      "_id":"CrRvuvcC_uqfwo-WSwLi",
      "creationtime":"2013-07-20T20:57:02",
      "currentdate":"2021-02-05 00:00:00",
      "age":"60 months"
   },
   {
      "_id":"CrRvuvcC_uqfwo-WSwLi",
      "creationtime":"2014-08-20T20:57:02",
      "currentdate":"2021-02-05 00:00:00",
      "age":"60 months"
   },
   {
      "_id":"CrRvuvcC_uqfwo-WSwLi",
      "creationtime":"2015-09-20T20:57:02",
      "currentdate":"2021-02-05 00:00:00",
      "age":"60 months"
   }
]

我想根据每个文档ID进行批量更新,但问题是我需要更正6个月的数据

有没有一种方法可以做到这一点,而不是循环遍历,我遇到的所有使用Pandas数据帧进行更新的示例都是基于已知值的。但是在这里_id我将在代码运行时得到。

我写的逻辑是获取所有文档

谁能给我一些想法,或者给我指出正确的方向。

暂时还没有答案

 类似资料:
  • 我想用Django更新一个表-类似这样的原始SQL: 我的第一个结果是这样的——但这很恶心,不是吗? 有没有更优雅的方式?

  • 问题内容: 是否有Elasticsearch插件可以让我对输入索引的文档进行分类? 对我而言,最好的解决方案是对所有最经常出现的术语(/概念)进行分类,以一种用户可以浏览的标签云显示。 有没有办法做到这一点?有什么建议? 谢谢 问题答案: 基本思想是使用聚合,每项将产生一个存储桶。 您将获得的响应将通过减少术语出现次数来排序: 如果您正在使用Kibana,则可以基于这些术语直接创建标签云可视化。

  • [2016-01-08 15:06:49,354][WARN][http.netty][Marvel Man]在处理客户端http tra ffic时捕获异常,关闭连接[ID:0x2D26BAEC,/0:0:0:0:0:0:0:0:0:1:58923=>/0:0:0:0:1:9200]org.jboss.netty.handler.codec.frame.ToolongFrameException

  • 问题内容: 我正在使用MongoDB 3.2和MongoDB Java驱动程序3.2。我有一个包含数百个更新文档的数组,这些文档现在应该保存/存储在MongoDB中。为了做到这一点,我遍历数组,并为该数组中的每个文档调用方法。 现在,我想通过批量更新重新实现此逻辑。我尝试在使用MongoDB Java驱动程序3.2的MongoDB 3.2中找到批量更新的示例。 我尝试了这段代码: 但是,似乎这种方

  • 问题内容: 该代码按预期工作。但是,我不想更新第三个国家作为另一个文档,而是要更新第一个文档。 这样,文档ID 1将有3个国家:印度,中国和巴基斯坦。我想我需要使用doc_as_upsert参数更新API。但是我不确定如何编写JSON。 问题答案: 您可以使用update API 进行脚本更新: 更新 如果要在批量查询中使用它,也可以

  • 问题内容: 有没有人有使用更新的示例?它已在此处进行了文档记录,但是文档尚不清楚,并且不包含有效的示例。我尝试了以下方法: 我得到 我想使用部分文档进行更新,但是update方法不使用任何名为“ doc”或“ document”的参数。 问题答案: 您快要准备好了,只需要将您的身体放在“ doc”字段中即可。使用elasticsearch-py进行部分更新的正确方法如下: