顺序插入几万条数据到 MongoDB 未经修改 此时自动生成的_id 是不是越来越大的?

2018-07-02 19:13:13 +08:00
 whereabouts
发现_id 是 bson.objectid 类型,可以用运算符比较大小,数据仓库写代码的时候忘记加.sort()排序就拿到_id 用了,想问下自动生成_id 的规则是不是越来越大的,是的话就不用回头再改程序了。。
数据是顺序插入的,没有修改过。
1986 次点击
所在节点    程序员
4 条回复
csuzhangxc
2018-07-02 19:31:23 +08:00
conn4575
2018-07-02 22:11:07 +08:00
是的,mongo 的 id 里面带有时间戳属性,所以可以保证越来越大,具体看一楼文档
my3157
2018-07-03 02:23:51 +08:00
copy from #1 url

```
a 4-byte value representing the seconds since the Unix epoch,
a 3-byte machine identifier,
a 2-byte process id, and
a 3-byte counter, starting with a random value.

```

以上顺序拼起来之后 hex 就是常见到的 `5b375b5c44edb42181e15bbd`
dlllcs
2018-07-03 14:04:09 +08:00
并不是,同一秒同一机器的无法区分顺序,时间戳只保存到秒

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/467567

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX