gpt4 book ai didi

java-8 - 如何使用 UPSERT 了解 Couchbase 是否更新或插入了记录

转载 作者:行者123 更新时间:2023-12-02 09:08:27 29 4
gpt4 key购买 nike

我正在使用Couchbase java SDK来读取和写入数据。目前我有大量记录需要保存在 Couchbase 中。这些记录包含新记录或现有记录。

我正在使用Bucket.upsert对于此功能。但我还需要捕获在 Couchbase 中创建或更新了多少记录。

如何有效地实现这一目标?以下是我现在的伪代码

JsonDocument doc = bucket.get("docId")
if (doc != null) {
// Perform update
updatedCount++;
} else {
// perform insert
insertedCount++;
}

任何想法可以更好地做到这一点。因为我有超过 500k 条记录要保存到 Couchbase 中。

最佳答案

不幸的是,我们目前不公开 UPSERT 是否执行插入或更新。

如果您愿意承受一点性能损失,则可以直接执行插入,然后在插入失败时进行更新,并跟踪插入失败的频率。这应该可以告诉您更新插入执行插入而不是更新的频率。

如果这对性能影响太大,您可以在 1/1000 或 1/1,000,0000 次操作中执行两步操作。这应该可以使性能损失可控,同时生成有用的信息。

关于java-8 - 如何使用 UPSERT 了解 Couchbase 是否更新或插入了记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54574349/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com