2013-03-08 67 views
1

我需要从MongoDB返回一个JSON数据。我使用Ruby作为我的后端。对于客户端,我需要提供一个data_version字符串,以便他们知道数据是否已更改,以决定是否同步或从其存储加载。在MongoDB中跟踪数据版本

有没有办法自动增加它?还是有什么好的做法?

回答

1

当你使用MongoDB时,你可以添加时间戳到你的文档。这增加了两个字段:created_atupdated_at。您可以使用updated_at字段的值来执行您想要的操作。

+0

嗯,这是一个很好的想法。我甚至可以从BSON :: ObjectId中提取。但是,如果我有一个大集合,而且我只想快速查找它的整体变化,或者它是什么版本? – Dmitry 2013-03-08 14:23:22

+0

@DmitryKharlamov然后你的“版本”不会被链接到一个文件(否则这将是一个巨大的空间浪费)。你可以通过'updated_at'命令查询你的集合来查找最新的更新(按降序排列),然后得到最后一次更新,就像那样... – alestanis 2013-03-08 14:25:57

+0

是的,这正是我想要的 - 不要将它链接到单个文档,而是指出整个数据集何时发生变化,并且您的意见非常有帮助!谢谢! – Dmitry 2013-03-10 21:23:07