91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

DMRAC緩存交換

發布時間:2020-08-10 22:58:40 來源:ITPUB博客 閱讀:223 作者:eric0435 欄目:數據庫

緩存交換
根據目前的硬件發展狀況來看,網絡的傳輸速度比磁盤的讀、寫速度更快,因此,DMRAC集群引入了緩存交換(Buffer Swap)技術,節點間的數據頁盡可能通過網絡傳遞,避免通過磁盤的寫入、再讀出方式在節點間傳遞數據,從而減少數據庫的IO等待時間,提升系統的響應速度。

緩存交換的實現基礎是GBS/LBS服務,在GBS/LBS中維護了Buffer數據頁的相關信息。包括:1. 閂的封鎖權限(LATCH);2. 哪些站點訪問過此數據頁(Access MAP);3. 最新數據保存在哪一個節點(Fresh EP)中;4. 以及最新數據頁的LSN值(Fresh LSN)等信息。這些信息作為LBS封鎖、GBS授權和GBS權限回收請求的附加信息進行傳遞,因此并不會帶來額外的通訊開銷。

下面,以兩節點DMRAC集群(EP0/EP1)訪問數據頁P1為例子。初始頁P1位于共享存儲上,P1的GBS控制結構位于節點EP1上。初始頁P1還沒有被任何一個節點訪問過,初始頁P1的LSN為10000。通過幾種常見場景分析,逐步深入,解析緩存交換的原理。
場景1
節點EP0訪問數據頁P1。
1. 節點EP0的本地LBS向EP1的GBS請求數據頁P1的S LATCH權限
2. 節點EP1的GBS修改P1控制結構,記錄訪問節點EP0的封鎖模式為S LATCH(數據分布節點為EP0),并響應EP0的LBS請求
3. 節點EP0的LBS獲得GBS授權后,記錄獲得的授權模式是S_LATCH,P1數據不在其他節點的Buffer中,發起本地IO請求,從磁盤讀取數據。
IO完成后,修改LBS控制結構,記錄數據頁上的LSN信息
DMRAC緩存交換

場景2
節點EP1訪問數據頁P1。
1. 節點EP1本地LBS向EP1的GBS請求數據頁P1的S LATCH權限
2. 節點EP1的GBS修改控制結構,記錄訪問節點EP1的封鎖模式為S LATCH(數據分布節點為EP0/EP1),并響應EP1的LBS請求
3. 節點EP1的LBS獲得GBS授權后,記錄獲得的授權模式是S LATCH,根據數據分布情況,EP1向EP0發起P1的讀請求,通過內部網絡從EP0獲取
數據,而不是重新從磁盤讀取P1數據
DMRAC緩存交換
場景3
節點EP0修改數據頁P1。
1. 節點EP0本地LBS向EP1的GBS請求數據頁P1的X LATCH權限(附加LSN信息)
2. 節點EP1的GBS修改控制結構的LSN值,從EP1的LBS回收P1的權限
3. 修改訪問節點EP0的封鎖模式為S + X LATCH,并響應EP0的LBS請求
4. 節點EP0的LBS獲得GBS授權后,記錄獲得的授權模式是S + X LATCH
5. 節點EP0修改數據頁P1,LSN修改為11000
這個過程中,只有全局Latch請求,數據頁并沒有在節點間傳遞。
DMRAC緩存交換
修改之后,數據頁P1的LSN修改為11000。如下所示:
DMRAC緩存交換

場景4
節點EP1修改數據頁P1。
1.節點EP1本地LBS向EP1的GBS請求數據頁P1的X LATCH權限
2.節點EP1的GBS發現P1被EP0以S + X方式封鎖,向EP0發起回收P1權限的請求
3.節點EP0釋放P1的全局LATCH,響應GBS,并且在響應消息中附加了最新的PAGE LSN值
4.節點EP1的GBS收到EP0的響應后,修改GBS控制結構,記錄最新數據保存在EP0,最新的LSN值信息,記錄EP0獲得的授權模式是S + X LATCH
(此時,數據分布節點仍然是EP0/EP1),并授權EP1的LBS
5.節點EP1的LBS收到授權信息后,記錄獲得的授權模式是S + X LATCH,并根據數據分布情況,向節點EP0發起數據頁P1的讀請求
6.節點EP1修改數據頁P1,LSN修改為12000
DMRAC緩存交換

修改之后,數據頁P1的LSN修改為12000。如下所示:
DMRAC緩存交換

這個過程中,數據頁P1的最新數據從EP0傳遞到了EP1,但并沒有產生磁盤IO。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

依安县| 色达县| 涟水县| 江津市| 四川省| 乐东| 荣成市| 法库县| 芜湖县| 临城县| 读书| 遵化市| 昔阳县| 昭平县| 凉城县| 武穴市| 永川市| 巴林左旗| 孝感市| 嘉鱼县| 巴塘县| 南澳县| 会同县| 潜江市| 阳谷县| 昌乐县| 和平县| 常宁市| 德格县| 河津市| 三门峡市| 平湖市| 原平市| 西充县| 乐陵市| 湘乡市| 历史| 本溪市| 阿勒泰市| 当涂县| 惠水县|