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

          軟件下載吧

          當前位置:軟件下載吧 > 技術開發 > 數據庫 > postgresql流復制原理以及流復制和邏輯復制的區別說明

          postgresql流復制原理以及流復制和邏輯復制的區別說明

          時間:2024-02-13 10:22作者:下載吧人氣:20

          流復制的原理:

          物理復制也叫流復制,流復制的原理是主庫把WAL發送給備庫,備庫接收WAL后,進行重放。

          邏輯復制的原理:

          邏輯復制也是基于WAL文件,在邏輯復制中把主庫稱為源端庫,備庫稱為目標端數據庫,源端數據庫根據預先指定好的邏輯解析規則對WAL文件進行解析,把DML操作解析成一定的邏輯變化信息(標準SQL語句),源端數據庫把標準SQL語句發給目標端數據庫,目標端數據庫接收到之后進行應用,從而實現數據同步。

          流復制和邏輯復制的區別:

          流復制主庫上的事務提交不需要等待備庫接收到WAL文件后的確認,邏輯復制相反。

          流復制要求主備庫的大版本一致,邏輯復制可以跨大版本的數據同步,也可以實現異構數據庫的數據同步。

          流復制的主庫可讀寫,從庫只允許讀,邏輯復制的目標端數據庫要求可讀寫

          流復制是對實例級別的復制(整個postgresql數據庫),邏輯復制是選擇性的復制一些表,所以是對表級別的復制。

          流復制有主庫的DDL、DML操作,邏輯復制只有DML操作。

          補充:PostgreSQL 同步流復制原理和代碼淺析

          背景

          數據庫ACID中的持久化如何實現

          數據庫ACID里面的D,持久化。 指的是對于用戶來說提交的事務,數據是可靠的,即使數據庫crash了,在硬件完好的情況下,也能恢復回來。

          PostgreSQL是怎么做到的呢,看一幅圖,畫得比較丑,湊合看吧。

          假設一個事務,對數據庫做了一些操作,并且產生了一些臟數據,首先這些臟數據會在數據庫的shared buffer中。

          同時,產生這些臟數據的同時也會產生對應的redo信息,產生的REDO會有對應的LSN號(你可以理解為REDO 的虛擬地址空間的一個唯一的OFFSET,每一筆REDO都有),這個LSN號也會記錄到shared buffer中對應的臟頁中。

          walwriter是負責將wal buffer flush到持久化設備的進程,同時它會更新一個全局變量,記錄已經flush的最大的LSN號。

          bgwriter是負責將shared buffer的臟頁持久化到持久化設備的進程,它在flush時,除了要遵循LRU算法之外,還要通過LSN全局變量的比對,來保證臟頁對應的REDO記錄已經flush到持久化設備了,如果發現還對應的REDO沒有持久化,會觸發WAL writer去flush wal buffer。 (即確保日志比臟數據先落盤)

          當用戶提交事務時,也會產生一筆提交事務的REDO,這筆REDO也攜帶了LSN號。backend process 同樣需要等待對應LSN flush到磁盤后才會返回給用戶提交成功的信號。(保證日志先落盤,然后返回給用戶)

          數據庫同步復制原理淺析

          同步流復制,即保證standby節點和本地節點的日志雙雙落盤。

          PostgreSQL使用另一組全局變量,記錄同步流復制節點已經接收到的XLOG LSN,以及已經持久化的XLOG LSN。

          用戶在發起提交請求后,backend process除了要判斷本地wal有沒有持久化,同時還需要判斷同步流復制節點的XLOG有沒有接收到或持久化(通過synchronous_commit參數控制)。

          如果同步流復制節點的XLOG還沒有接收或持久化,backend process會進入等待狀態。

          數據庫同步復制代碼淺析

          對應的代碼和解釋如下:

          CommitTransaction @ src/backend/access/transam/xact.c
          RecordTransactionCommit @ src/backend/access/transam/xact.c

          標簽[db:關鍵字]

          相關下載

          查看所有評論+

          網友評論

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

          熱門閱覽

          最新排行

          公眾號

          主站蜘蛛池模板: 四虎成人精品一区二区免费网站 | 99精品国产一区二区三区| 久久综合亚洲色一区二区三区| 亚洲一区二区三区在线观看精品中文| 精品视频一区二区观看| 高清一区二区在线观看| 日韩免费观看一区| 成人一区专区在线观看| 国产一区麻豆剧传媒果冻精品| 精品视频无码一区二区三区 | 中文激情在线一区二区| 国产一区二区三区久久精品| 国产精品成人一区二区| 日本一区午夜爱爱| 99在线精品一区二区三区| 国产午夜精品一区二区三区嫩草| 夜夜高潮夜夜爽夜夜爱爱一区| 亚洲一区二区三区无码中文字幕 | 无码成人一区二区| 日本在线观看一区二区三区| 中文字幕一区二区三区在线播放| 一本岛一区在线观看不卡| 2020天堂中文字幕一区在线观| 成人一区二区免费视频| 国产在线精品观看一区| 中文字幕一区二区精品区| 国产一区二区三区高清视频| 亚洲成a人一区二区三区| 国产电影一区二区| 日本高清一区二区三区| 国产精品无码一区二区在线观| 亚洲国产欧美一区二区三区 | 久久综合亚洲色一区二区三区| 日韩精品一区二区三区影院| 色天使亚洲综合一区二区| 国产精品乱码一区二区三| 另类ts人妖一区二区三区| 日韩精品免费一区二区三区 | 精品日韩亚洲AV无码一区二区三区| 久久一本一区二区三区| 亚洲A∨精品一区二区三区下载|