下載吧 - 綠色安全的游戲和軟件下載中心

軟件下載吧

當前位置:軟件下載吧 > 數據庫 > DB2 > Mongodb的oplog詳解

Mongodb的oplog詳解

時間:2024-03-04 00:33作者:下載吧人氣:15

Oplog 是 MongoDB 實現復制集的關鍵數據結構,在復制集中 Primary 對數據庫操作之后就會產生一個 Oplog 文檔保存在 local.oplog.rs 集合中,Secondary 成員會拉取 Primary 的 Oplog 并重放相同的操作,從而達到 Secondary 成員與 Primary 有一致的數據。實際上復制集中每一個成員都會保存 Oplog,其他成員會根據連接延遲等因數選擇最近的成員拉取 Oplog 數據。

Oplog 存在集合 local.oplog.rs,這是系統內置集合,一個 capped collection,即是這個 collection 有固定大小,一旦寫滿數據會從頭開始寫入,就像一個圓形的隊列結構。這個 collection 大小在初始化集群時設置,默認的大小是 5% 的空閑磁盤空間,也可以在配置文件設置 oplogSizeMB 選項,或者在啟動 MongoDB 后使用 replSetResizeOplog 命令動態設置 collection 大小。

Oplog 與 MongoDB 的其他的文檔沒有什么不同,它固定有一些屬性:

  1. ts: MongoDB 的內置的特殊時間戳數據結構,如 Timestamp(1503110518, 1), 由秒級的 Unix 時間戳和一個順序增長的整數 increment 表示。長度為 64 位,其中 Unix 時間戳占 32 位,后 32 位可以保存同一秒內的第幾次操作。
  2. h: hash 值代表每個 Oplog 的唯一標識。
  3. v: Oplog 版本
  4. ns: namespace 命名空間,數據庫+集合,用 database.collection 表示。但如果是表操作命令等,變成 database.$cmd。
  5. op:operation type,操作類型,包含以下幾種:
    1. i: insert, 插入文檔
    2. u: update, 更新文檔
    3. d: delete, 刪除文檔
    4. c: command, 操作命令,如 createIndex 等
    5. n: 空操作,用于空閑時主從同步 Oplog 時間信息
  6. o: operation, Oplog 操作的具體內容,例如 i operation type,o 即是插入的文檔。對于 u operation type, 只更新部分內容, o 鍵的內容為 {$set: {…}}
  7. o2: 用于 update 操作,包含 _id 屬性值。

Oplog 的重放是冪等(idempotent)的,即是說同一個 Oplog 重放多次最終結果還是一致的。這是 MongoDB 將許多命令操作進行了轉化,保持生成的 Oplog 是可以冪等的,如執行以下 $inc 操作:

db.test.update({_id: ObjectId(“533022d70d7e2c31d4490d22”)}, {$inc: {count: 1}})

標簽Mongodb,oplog,詳解

相關下載

查看所有評論+

網友評論

網友
您的評論需要經過審核才能顯示

熱門閱覽

最新排行

公眾號

主站蜘蛛池模板: 黑人粗长大战亚洲女2021国产精品成人免费视频 | 亚洲福利在线观看| n男同时一女的h文4p| 狠狠精品干练久久久无码中文字幕| 在线天堂中文官网| 亚洲国产精品第一区二区| 色婷婷丁香六月| 日本亚洲精品色婷婷在线影院| 啊轻点灬大巴太粗太长视频| www.91av.| 欧美成人免费在线视频| 国产成人精品高清在线观看99| 久久久久亚洲精品无码网址色欲| 精品香蕉久久久午夜福利| 大香伊蕉日本一区二区| 亚洲免费网站观看视频| 视频一区二区中文字幕| 成人性生交视频免费观看| 亚洲综合激情另类小说区| 五月天综合视频| 扒开两腿猛进入爽爽视频| 伊人天堂av无码av日韩av| 又黄又骚的网站| 日本一道高清不卡免费| 八戒八戒www观看在线| 91成人试看福利体验区| 日韩国产成人精品视频| 区二区三区四区免费视频| 4p高h肉辣古代| 日本人与黑人xxxx| 亚洲精品乱码久久久久久蜜桃不卡 | 欧美日韩一区二区三区在线观看视频 | 人妻体体内射精一区二区| 手机看片日韩福利| 手机在线观看精品国产片| 亚洲精品亚洲人成在线观看| 麻豆精品久久久久久久99蜜桃| 嫩草影院精品视频在线观看| 亚洲免费网站观看视频| 美国式禁忌23| 国产精品ⅴ无码大片在线看 |