bson.timestamp.Timestamp - 递增计数器是什么?
bson.timestamp.Timestamp - What is the incrementing counter?
bson.timestamp.Timestamp 接受两个参数:time 和 inc.
time显然是Timestamp中存储的时间值。
什么是公司?它被描述为递增计数器,但它的用途是什么?它应该是什么值?将其设置为 0、1 或其他任何值会影响存储的时间值吗?它会随着时间的推移而改变吗?这不是你存储 Date/Timestamp 时想要的吗?
What is inc? It is described as the incrementing counter, but what purpose does it serve?
BSON type 时间戳值由 64 位值组成:
- 前 32 位是
time_t
值(自 Unix epoch 以来的秒数)
- 第二个 32 位是给定秒内运算的递增
ordinal
。
简而言之,它的目的是对给定秒内发生的操作进行排序。即指定增量为 1,如果在一秒钟内有两个操作,则操作将为 operation1
、operation2
。
Is this not what you want when storing a Date/Timestamp?
在不了解您的应用程序用例和上下文的情况下,这是一个广泛的问题。但是,BSON 时间戳类型是供 internal MongoDB 使用的。在大多数情况下,在应用程序开发中,您会希望使用 BSON date 类型。
PyMongo 使用 datetime.datetime 对象来表示 MongoDB 文档中的日期和时间。
最后,值得注意的是,不要将 BSON 时间戳与 time.time 中的 Python 时间戳混淆。
bson.timestamp.Timestamp 接受两个参数:time 和 inc.
time显然是Timestamp中存储的时间值。
什么是公司?它被描述为递增计数器,但它的用途是什么?它应该是什么值?将其设置为 0、1 或其他任何值会影响存储的时间值吗?它会随着时间的推移而改变吗?这不是你存储 Date/Timestamp 时想要的吗?
What is inc? It is described as the incrementing counter, but what purpose does it serve?
BSON type 时间戳值由 64 位值组成:
- 前 32 位是
time_t
值(自 Unix epoch 以来的秒数) - 第二个 32 位是给定秒内运算的递增
ordinal
。
简而言之,它的目的是对给定秒内发生的操作进行排序。即指定增量为 1,如果在一秒钟内有两个操作,则操作将为 operation1
、operation2
。
Is this not what you want when storing a Date/Timestamp?
在不了解您的应用程序用例和上下文的情况下,这是一个广泛的问题。但是,BSON 时间戳类型是供 internal MongoDB 使用的。在大多数情况下,在应用程序开发中,您会希望使用 BSON date 类型。
PyMongo 使用 datetime.datetime 对象来表示 MongoDB 文档中的日期和时间。
最后,值得注意的是,不要将 BSON 时间戳与 time.time 中的 Python 时间戳混淆。