[發(fā)明專利]一種數(shù)據(jù)頁(yè)處理方法、裝置及系統(tǒng)在審
| 申請(qǐng)?zhí)枺?/td> | 202010956140.1 | 申請(qǐng)日: | 2020-09-11 |
| 公開(公告)號(hào): | CN112100141A | 公開(公告)日: | 2020-12-18 |
| 發(fā)明(設(shè)計(jì))人: | 王天宇 | 申請(qǐng)(專利權(quán))人: | 北京金山云網(wǎng)絡(luò)技術(shù)有限公司 |
| 主分類號(hào): | G06F16/172 | 分類號(hào): | G06F16/172;G06F16/18;G06F16/23;G06F16/27 |
| 代理公司: | 北京華夏泰和知識(shí)產(chǎn)權(quán)代理有限公司 11662 | 代理人: | 沈園園 |
| 地址: | 100085 北京市海淀*** | 國(guó)省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 數(shù)據(jù) 處理 方法 裝置 系統(tǒng) | ||
本申請(qǐng)涉及一種數(shù)據(jù)頁(yè)處理方法、裝置及系統(tǒng)。該技術(shù)方案中,當(dāng)出現(xiàn)熱點(diǎn)數(shù)據(jù),主節(jié)點(diǎn)頻繁更新數(shù)據(jù)頁(yè)時(shí),不必等待所有從節(jié)點(diǎn)均完成對(duì)數(shù)據(jù)頁(yè)的當(dāng)前變更,只要所有從節(jié)點(diǎn)均至少緩存了上一次持久化的數(shù)據(jù)頁(yè),主節(jié)點(diǎn)就可持久化當(dāng)前變更后的數(shù)據(jù)頁(yè)了。這樣,將主節(jié)點(diǎn)對(duì)當(dāng)前變更后數(shù)據(jù)頁(yè)的持久化與所有從節(jié)點(diǎn)完成該數(shù)據(jù)頁(yè)的當(dāng)前變更解耦,使得即便出現(xiàn)熱點(diǎn)數(shù)據(jù)更新,主節(jié)點(diǎn)的檢查點(diǎn)事件也可以持續(xù)推進(jìn),執(zhí)行數(shù)據(jù)頁(yè)持久化操作,后續(xù)對(duì)數(shù)據(jù)頁(yè)的更新也可正常執(zhí)行,避免數(shù)據(jù)庫(kù)發(fā)生異常。
技術(shù)領(lǐng)域
本申請(qǐng)涉及數(shù)據(jù)庫(kù)技術(shù)領(lǐng)域,尤其涉及一種數(shù)據(jù)頁(yè)處理方法、裝置及系統(tǒng)。
背景技術(shù)
在數(shù)據(jù)庫(kù)應(yīng)用中,采用計(jì)算存儲(chǔ)分離架構(gòu),多個(gè)計(jì)算節(jié)點(diǎn)共享存儲(chǔ)層數(shù)據(jù)。為了應(yīng)對(duì)巨大的數(shù)據(jù)訪問量的問題,計(jì)算節(jié)點(diǎn)通常會(huì)采用主從復(fù)制(Primary-Replica)的架構(gòu)。主節(jié)點(diǎn)負(fù)責(zé)數(shù)據(jù)的寫入,從節(jié)點(diǎn)通過從存儲(chǔ)層獲取重做日志RedoLog的方式同步主節(jié)點(diǎn)的數(shù)據(jù)更新。目前,主節(jié)點(diǎn)對(duì)于更新后的數(shù)據(jù)頁(yè)P(yáng)age,需要在所有從節(jié)點(diǎn)完成對(duì)該數(shù)據(jù)頁(yè)的更新后才能執(zhí)行持久化操作。
但是,當(dāng)出現(xiàn)對(duì)同一數(shù)據(jù)頁(yè)的頻繁修改時(shí),組從節(jié)點(diǎn)之間多次同步修改對(duì)應(yīng)的重做日志,從節(jié)點(diǎn)不斷應(yīng)用重做日志同步數(shù)據(jù)頁(yè)變更。由于主從節(jié)點(diǎn)之間存在同步延遲,當(dāng)修改頻繁時(shí),持久化條件一直無法滿足,主節(jié)點(diǎn)就不能對(duì)更新后的數(shù)據(jù)頁(yè)進(jìn)行持久化,這樣,主節(jié)點(diǎn)的檢查點(diǎn)CheckPoint事件推進(jìn)異常。并且,從節(jié)點(diǎn)由于不斷應(yīng)用重做日志同步數(shù)據(jù)頁(yè)更新,強(qiáng)制緩存隊(duì)列Force_Cache_List鏈表持續(xù)增加,頁(yè)面淘汰機(jī)制失效,嚴(yán)重消耗從節(jié)點(diǎn)大量?jī)?nèi)存。
發(fā)明內(nèi)容
為了解決上述技術(shù)問題或者至少部分地解決上述技術(shù)問題,本申請(qǐng)實(shí)施例提供了一種數(shù)據(jù)頁(yè)處理方法、裝置及系統(tǒng)。
根據(jù)本申請(qǐng)實(shí)施例的一個(gè)方面,提供了一種數(shù)據(jù)頁(yè)持久化方法,包括:
接收從節(jié)點(diǎn)發(fā)送的第一應(yīng)用日志序號(hào),所述第一應(yīng)用日志序號(hào)由所述從節(jié)點(diǎn)應(yīng)用第一數(shù)據(jù)頁(yè)對(duì)應(yīng)的第一重做日志后得到;
從所有所述從節(jié)點(diǎn)發(fā)送的第一應(yīng)用日志序號(hào)中確定最小應(yīng)用日志序號(hào);
當(dāng)確定所述最小應(yīng)用日志序號(hào)大于或等于上一次數(shù)據(jù)頁(yè)持久化操作對(duì)應(yīng)的第一持久化日志序號(hào)時(shí),將當(dāng)前變更操作后的第二數(shù)據(jù)頁(yè)標(biāo)識(shí)為可持久化。
可選的,所述方法還包括:
當(dāng)進(jìn)行對(duì)數(shù)據(jù)頁(yè)的第一變更操作后,得到第一數(shù)據(jù)頁(yè),將所述第一變更操作對(duì)應(yīng)的第一重做日志寫入存儲(chǔ)層;
生成第一通知消息,所述通知消息包括所述第一重做日志在所述存儲(chǔ)層中的第一偏移量;
將所述第一通知消息發(fā)送到所述從節(jié)點(diǎn),由所述從節(jié)點(diǎn)根據(jù)所述第一偏移量從所述存儲(chǔ)層讀取所述第一重做日志,對(duì)所述第一重做日志進(jìn)行應(yīng)用后得到所述第一數(shù)據(jù)頁(yè),生成第一應(yīng)用日志序號(hào),并將所述第一數(shù)據(jù)頁(yè)加入到所述從節(jié)點(diǎn)的強(qiáng)制緩存隊(duì)列。
可選的,所述方法還包括:
當(dāng)對(duì)所述第二數(shù)據(jù)頁(yè)的持久化操作執(zhí)行完畢后,生成包括所述第二數(shù)據(jù)頁(yè)對(duì)應(yīng)的數(shù)據(jù)頁(yè)標(biāo)識(shí)及第二持久化日志序號(hào)的數(shù)據(jù)頁(yè)淘汰指令;
將所述數(shù)據(jù)頁(yè)淘汰指令發(fā)送到所述從節(jié)點(diǎn)。
可選的,所述將當(dāng)前變更操作后的第二數(shù)據(jù)頁(yè)標(biāo)識(shí)為可持久化,包括:
將所述第二數(shù)據(jù)頁(yè)對(duì)應(yīng)的持久化標(biāo)識(shí)置為有效;
所述方法還包括:
當(dāng)對(duì)所述第二數(shù)據(jù)頁(yè)的持久化操作執(zhí)行完畢后,將所述持久化標(biāo)識(shí)清零。
根據(jù)本申請(qǐng)實(shí)施例的另一個(gè)方面,提供了一種數(shù)據(jù)頁(yè)處理方法,包括:
接收主節(jié)點(diǎn)對(duì)第二數(shù)據(jù)頁(yè)持久化操作后發(fā)送的數(shù)據(jù)頁(yè)淘汰指令,所述數(shù)據(jù)頁(yè)淘汰指令包括第二數(shù)據(jù)頁(yè)對(duì)應(yīng)的數(shù)據(jù)頁(yè)標(biāo)識(shí)及第二持久化日志序號(hào);
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于北京金山云網(wǎng)絡(luò)技術(shù)有限公司,未經(jīng)北京金山云網(wǎng)絡(luò)技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010956140.1/2.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法、數(shù)據(jù)系統(tǒng)、接收設(shè)備和數(shù)據(jù)讀取方法
- 數(shù)據(jù)記錄方法、數(shù)據(jù)記錄裝置、數(shù)據(jù)記錄媒體、數(shù)據(jù)重播方法和數(shù)據(jù)重播裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)發(fā)送系統(tǒng)、數(shù)據(jù)發(fā)送裝置以及數(shù)據(jù)結(jié)構(gòu)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法及數(shù)據(jù)系統(tǒng)
- 數(shù)據(jù)嵌入裝置、數(shù)據(jù)嵌入方法、數(shù)據(jù)提取裝置及數(shù)據(jù)提取方法
- 數(shù)據(jù)管理裝置、數(shù)據(jù)編輯裝置、數(shù)據(jù)閱覽裝置、數(shù)據(jù)管理方法、數(shù)據(jù)編輯方法以及數(shù)據(jù)閱覽方法
- 數(shù)據(jù)發(fā)送和數(shù)據(jù)接收設(shè)備、數(shù)據(jù)發(fā)送和數(shù)據(jù)接收方法
- 數(shù)據(jù)發(fā)送裝置、數(shù)據(jù)接收裝置、數(shù)據(jù)收發(fā)系統(tǒng)、數(shù)據(jù)發(fā)送方法、數(shù)據(jù)接收方法和數(shù)據(jù)收發(fā)方法
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 一種數(shù)據(jù)庫(kù)讀寫分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測(cè)試終端的測(cè)試方法
- 一種服裝用人體測(cè)量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測(cè)程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





