【问题标题】:dynamodb batchupdate using DynamoDBMapper使用 DynamoDBMapper 进行 dynamodb 批量更新
【发布时间】:2022-01-08 11:40:09
【问题描述】:

根据

Dynamodb 不支持批量更新,仅支持批量写入/放置。但是 DynamoDBMapper 支持具有 UPDATE_SKIP_NULL_ATTRIBUTES 行为的 batchWrite。这是否意味着内部映射器为 UPDATE_SKIP_NULL_ATTRIBUTES 调用单个更新而不是批量更新?

【问题讨论】:

    标签: amazon-web-services amazon-dynamodb


    【解决方案1】:

    当您使用 BatchWrite 时,它​​会替换现有项目(不更新)。即使您使用 DynamoDBMapper,功能也应该是相同的。

    根据 DynamoDBMapper source codeSaveBehaviorUPDATE_SKIP_NULL_ATTRIBUTES,它最终以 25 个批量大小迭代调用 BatchWriteItemRequest,替换现有项。

    检查AWS Class Reference文档中的以下语句。

    注意:BatchWriteItem 无法更新项目。要更新项目,请使用 更新项目 API。

    【讨论】:

    • 默认情况下是的,它会替换,但是当您在 DynamoDBMapperConfig 中使用SaveBehavior(SaveBehavior.UPDATE_SKIP_NULL_ATTRIBUTES) 设置时,它还会替换现有项目还是跳过空属性?
    • 检查更新的答案 :),我刚刚浏览了源代码并检查了内部发生的情况。
    猜你喜欢
    • 2018-09-20
    • 1970-01-01
    • 2017-03-02
    • 1970-01-01
    • 2020-12-01
    • 1970-01-01
    • 2012-08-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多