我们想把版本信息添加到Couchbase中的所有文档的元数据信息中。
为什么呢?因为我们的实体对象是不断变化的,我们想在不破坏数据服务的情况下实现以下功能。
这样我们就可以为我们不同的消费者支持多种文档版本。
最理想的实现方式是什么?如何以一种可以根据版本查询Couchbase的方式来存储文档?
我不是一个Java开发人员,所以我不明白你在Spring中工作的所有限制,但你是否考虑过给文档添加一个 "版本 "属性?
book::0001
{
"title" : "Moby Dick",
"version" : 1
}
然后
book::0002
{
"title" : "Gone Whalin'",
"isbn10" : "1492966851",
"version" : 2
}
为了在couchbase文档中的版本是 乐观的锁定.请看这里。 还有一点很重要的是,我们不能修改这个版本,它是由couchbase自己处理的。
你可以用spring data couchbase轻松处理。如果你需要更详细的例子,请告诉我。