MongoDb中的全局自动递增字段

时间:2012-06-27 22:11:02

标签: mongodb

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

Perforce具有更改列表#的概念,可以成为无状态更新的强大功能。我正在考虑相同类型的功能。

示例:

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

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

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

1 个答案:

答案 0 :(得分:1)

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

如上所述,我也看到人们在最后更新时间使用“时间戳”。这可能满足您的要求。

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