如何更新(就地)couchbase 中的 JSON 文档?

How to update(in-place) the JSON document in couchbase?

我想在 couchbase 的现有文档中添加一个字段。 例如,假设我们在 couchbase 默认存储桶中有以下文档:

{"first_name":"Abc", "last_name":"Mno"}

现在我想在 json 文档中添加一个新字段,使其变为:

{"first_name":"Abc", "last_name":"Mno", "city":"Xyz"}

我知道此功能直到 2013 年年中才可用,如 post 中所述。但是,也提到 Couchbase 团队正在开发此功能。有人有关于相同的更新吗?

Couchbase 尚不支持子文档编辑,但很可能只需获取现有文档、向其添加字段并将文档写回数据库即可。由于托管缓存,这里确实没有太多开销。 IMO,开销只对非常大的文件很重要。即使数据库确实进行了子文档编辑,某些机制也必须从数据库中获取原始文档,进行编辑并写回,以便文档是连续的。现在,它只是您的应用程序,而不是在数据库中。

在幕后,Couchbase 会将文档的新版本附加到 vBucket 文件的末尾,然后将原始版本标记为无效。自动压缩作业将在运行时清理并删除旧版本。