gpt4 book ai didi

mongodb - oplog 字段实际上是什么意思?

转载 作者:IT老高 更新时间:2023-10-28 13:36:16 26 4
gpt4 key购买 nike

我以前看过这个问题,但答案很模糊。我一直在对 oplog 进行一些研究,并试图准确了解它是如何工作的。特别是,我想对 oplog 文档中的字段以及它们存储的数据有一个很好的了解。

这些是我通过测试发现的字段以及我认为它们的含义以及我仍然不确定的含义:

  • ts:写操作/oplog条目的时间戳
  • h:oplog 条目的唯一标识符(但为什么有时为正有时为负?)
  • op:执行的操作类型(通常 i/u/d 用于插入、更新或删除)
  • ns:数据库和集合受到影响
  • o:执行更改后文档的新状态
  • o2:在更新操作期间似乎包含文档的 _id 字段。当同一字段作为 o 字段的一部分存在时,为什么需要这样做,该字段还包含文档的其余部分?
  • b:似乎是为删除操作出现的 bool 值。这个领域有什么意义?

我想确认我上面的观点是否准确,以及对不清楚的地方的澄清。我也有兴趣知道 oplog 文档中是否还有其他字段。

最佳答案

  • h 是一个散列(有符号 Long)
  • ts 是内部时间戳格式(bsonspec.org 上显示的“\x11”类型;在 api.mongodb.org 上搜索 API 文档以获取更多信息)
  • 你在 op、ns、o 和 o2 上是正确的
  • 还有一个“v”字段(我推测这是版本,这将允许他们更新 oplog 的架构)。
  • b 对于我能找到的所有删除操作都是 True,所以我无法提供任何信息。

我发现的最佳文档来源是 this .这是一家名为 Stripe 的公司在 2014 年 MongoDB World 大会上的演示文稿,其中包含一些示例 Ruby 代码。

关于mongodb - oplog 字段实际上是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26935419/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com