0

有没有办法在集合中创建全局自动递增值?

Perforce 有一个 changelist# 的概念,它可以成为无状态更新的强大功能。我正在考虑相同类型的功能。

例子:

create> DocA.name = "foo" => changelist = 1
create> DocB.name = "bar" => changelist = 2
update> DocA.name = "bob" => changelist = 3
create> DocC.name = "joe" => changelist = 4

结果:

DocA.changelist = 3
DocB.changelist = 2
DocC.changelist = 4

然后我可以搜索在 changelist:4 之后所做的任何更改,并确信我没有错过任何内容。

mongodb 大师对如何有效地做到这一点有任何想法吗?

4

1 回答 1

1

MongoDB 文档有一个auto-incrementing fields的列表。一般来说,这是不好的做法,但这可能适用于您寻求的功能。

也就是说,我还看到人们在上次更新时间使用“时间戳”。这可能会满足您的要求。

同样,如果这是一个非常关键的功能,您可能需要查看看起来最接近您想要的 Riak 的 MVCC。

于 2012-06-27T23:00:57.353 回答