Elasticsearch DSL Python,文档的自然键?

尤金

我有一个看起来像的文件

{

   date_at: '2020-10-01',
   foo_id: 3,
   value: 5
}

date_atfoo_id被定义,文档被唯一地限定。

所以我想做些类似的事情

MyDocument.update_or_create(date_at=date_at, foo_id=foo_id, {value: some_value})

如果date_at and foo_id存在具有给定文档的文档,请更新该文档,否则创建该文档。

为了更新或创建文档(ES称为“ upsert”),您需要通过更新API,并且该API需要文档ID。

选择与特定的文档date_atfoo_id将是的工作通过查询API更新,但该API不支持“upserting”(即创建或更新)。

因此,如果您的文档由date_at唯一定义foo_id,我建议给它们提供包含这两个值的ID,例如2020-10-01:3这样做可以让您像这样利用更新API:

POST your-index/_update/2020-10-01:3
{
  "doc": {
    "value": "some_value",
    "date_at": "2020-10-01",
    "foo_id": 3
  },
  "doc_as_upsert": true
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用 Elasticsearch DSL Python 的复合 Elasticsearch 聚合

来自分类Dev

在 ElasticSearch DSL 中对不同的文档进行排序

来自分类Dev

Python elasticsearch-dsl Django分页

来自分类Dev

Elasticsearch找不到使用DSL的现有文档

来自分类Dev

Elasticsearch DSL:聚合

来自分类Dev

Elasticsearch DSL:多种聚合

来自分类Dev

如何在Python中对Elasticsearch DSL的结果进行分页

来自分类Dev

如何记录或打印被调用的python elasticsearch-dsl查询

来自分类Dev

如何在elasticsearch-dsl python中选择特定字段

来自分类Dev

使用python聚合elasticsearch-dsl中的字段

来自分类Dev

elasticsearch dsl python:如何按数组内的值搜索

来自分类Dev

用于更新的 Elasticsearch DSL 查询

来自分类Dev

在 elasticsearch-dsl-py 中使用变量作为过滤项键

来自分类Dev

使用elasticsearch dsl python DocType将现有字段用作_id

来自分类Dev

SQL语句中的Elasticsearch DSL查询

来自分类Dev

elasticsearch-dsl-py查询格式

来自分类Dev

使用elasticsearch-dsl DocType的映射配置

来自分类Dev

Elasticsearch匹配多个IP子网DSL查询

来自分类Dev

在Elasticsearch中混合DSL和URI查询

来自分类Dev

查询DSL Elasticsearch不起作用

来自分类Dev

在Elasticsearch DSL中动态生成的DocType

来自分类Dev

范围或缺失 - ElasticSearch - 查询 DSL

来自分类Dev

elasticsearch_dsl 响应多个桶聚合

来自分类Dev

在 Elasticsearch 的查询 DSL 中使用 `MatchPhrasePrefix`

来自分类Dev

使用elasticsearch_dsl(Python)时如何指定文件类型?同样,如何指定一些索引?

来自分类Dev

通过 ElasticSearch DSL python 包装器创建索引时如何在索引级别设置 ignore_malformed?

来自分类常见问题

如何在Java中使用ElasticSearch JSON DSL?

来自分类Dev

Elasticsearch DSL限制过滤器返回的结果比指定的更多

来自分类Dev

使用elasticsearch-dsl使用Integer字段创建DocType类

Related 相关文章

  1. 1

    使用 Elasticsearch DSL Python 的复合 Elasticsearch 聚合

  2. 2

    在 ElasticSearch DSL 中对不同的文档进行排序

  3. 3

    Python elasticsearch-dsl Django分页

  4. 4

    Elasticsearch找不到使用DSL的现有文档

  5. 5

    Elasticsearch DSL:聚合

  6. 6

    Elasticsearch DSL:多种聚合

  7. 7

    如何在Python中对Elasticsearch DSL的结果进行分页

  8. 8

    如何记录或打印被调用的python elasticsearch-dsl查询

  9. 9

    如何在elasticsearch-dsl python中选择特定字段

  10. 10

    使用python聚合elasticsearch-dsl中的字段

  11. 11

    elasticsearch dsl python:如何按数组内的值搜索

  12. 12

    用于更新的 Elasticsearch DSL 查询

  13. 13

    在 elasticsearch-dsl-py 中使用变量作为过滤项键

  14. 14

    使用elasticsearch dsl python DocType将现有字段用作_id

  15. 15

    SQL语句中的Elasticsearch DSL查询

  16. 16

    elasticsearch-dsl-py查询格式

  17. 17

    使用elasticsearch-dsl DocType的映射配置

  18. 18

    Elasticsearch匹配多个IP子网DSL查询

  19. 19

    在Elasticsearch中混合DSL和URI查询

  20. 20

    查询DSL Elasticsearch不起作用

  21. 21

    在Elasticsearch DSL中动态生成的DocType

  22. 22

    范围或缺失 - ElasticSearch - 查询 DSL

  23. 23

    elasticsearch_dsl 响应多个桶聚合

  24. 24

    在 Elasticsearch 的查询 DSL 中使用 `MatchPhrasePrefix`

  25. 25

    使用elasticsearch_dsl(Python)时如何指定文件类型?同样,如何指定一些索引?

  26. 26

    通过 ElasticSearch DSL python 包装器创建索引时如何在索引级别设置 ignore_malformed?

  27. 27

    如何在Java中使用ElasticSearch JSON DSL?

  28. 28

    Elasticsearch DSL限制过滤器返回的结果比指定的更多

  29. 29

    使用elasticsearch-dsl使用Integer字段创建DocType类

热门标签

归档