[發(fā)明專利]一種日志恢復(fù)方法、存儲(chǔ)裝置和存儲(chǔ)節(jié)點(diǎn)有效
| 申請(qǐng)?zhí)枺?/td> | 201611089594.3 | 申請(qǐng)日: | 2016-11-30 |
| 公開(公告)號(hào): | CN106776130B | 公開(公告)日: | 2020-07-28 |
| 發(fā)明(設(shè)計(jì))人: | 李開廣;王英 | 申請(qǐng)(專利權(quán))人: | 華為技術(shù)有限公司 |
| 主分類號(hào): | G06F11/14 | 分類號(hào): | G06F11/14 |
| 代理公司: | 廣州三環(huán)專利商標(biāo)代理有限公司 44202 | 代理人: | 熊永強(qiáng);李稷芳 |
| 地址: | 518129 廣東*** | 國省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 日志 恢復(fù) 方法 存儲(chǔ) 裝置 節(jié)點(diǎn) | ||
揭露一種日志恢復(fù)技術(shù),可應(yīng)用于分布式存儲(chǔ)系統(tǒng),日志恢復(fù)方法包括:在目標(biāo)存儲(chǔ)節(jié)點(diǎn)從故障恢復(fù)正常后,向所述分布式存儲(chǔ)系統(tǒng)中的所述正常存儲(chǔ)節(jié)點(diǎn)發(fā)送獲取恢復(fù)日志的請(qǐng)求;所述目標(biāo)存儲(chǔ)節(jié)點(diǎn)接收其他存儲(chǔ)節(jié)點(diǎn)返回的第一恢復(fù)日志記錄,所述第一恢復(fù)日志指示了需要恢復(fù)的業(yè)務(wù)日志;按照所述第一恢復(fù)日志的指示,所述目標(biāo)存儲(chǔ)節(jié)點(diǎn)向所述正常存儲(chǔ)節(jié)點(diǎn)發(fā)送獲取業(yè)務(wù)日志的請(qǐng)求;所述目標(biāo)存儲(chǔ)節(jié)點(diǎn)根據(jù)收到的業(yè)務(wù)日志,生成目標(biāo)業(yè)務(wù)日志;對(duì)所述目標(biāo)業(yè)務(wù)日志進(jìn)行保存。
技術(shù)領(lǐng)域
本發(fā)明涉發(fā)明存儲(chǔ)技術(shù),涉及于存儲(chǔ)領(lǐng)域技術(shù)的日志領(lǐng)域。
背景技術(shù)
在存儲(chǔ)領(lǐng)域,越來越多的分布式存儲(chǔ)采用基于對(duì)象的架構(gòu),該架構(gòu)分為上下兩層,其中上層為文件系統(tǒng),塊,S3/Swift等服務(wù)層,下層為分布式鍵值(key value,KV)存儲(chǔ)層。
分布式KV存儲(chǔ)層負(fù)責(zé)系統(tǒng)存儲(chǔ)空間的分配,保存和釋放,為上層服務(wù)層提供跨存儲(chǔ)節(jié)點(diǎn)的可靠性,同時(shí)需要支持磁盤等存儲(chǔ)介質(zhì)故障的自我修復(fù)功能。分布式KV可以通過伴生日志來實(shí)現(xiàn)自我修復(fù)功能,修復(fù)類的伴生日志也稱為恢復(fù)日志。
服務(wù)層除了提供文件系統(tǒng),塊,S3/Swift等基本服務(wù)外,還需要提供配額,遠(yuǎn)程復(fù)制等增值特性,而這些增值特性也需要保存配額的消費(fèi)記錄,遠(yuǎn)程復(fù)制的增量變化記錄等。于是,這些增值特性對(duì)分布式存儲(chǔ)提出了額外的需求。分布式存儲(chǔ)也可以通過伴生日志提供了這些額外記錄的存儲(chǔ)和讀取方法,業(yè)務(wù)特性附加類伴生日志也稱為業(yè)務(wù)日志。
現(xiàn)有技術(shù)中,一種分布式存儲(chǔ)系統(tǒng)的校驗(yàn)方法是:把業(yè)務(wù)數(shù)據(jù)拆分成數(shù)據(jù)分片,由數(shù)據(jù)分片計(jì)算出冗余分片;一部分存儲(chǔ)節(jié)點(diǎn)存儲(chǔ)業(yè)務(wù)數(shù)據(jù)分片,另外一部分存儲(chǔ)節(jié)點(diǎn)存儲(chǔ)冗余分片。例如:數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)的數(shù)量為N,每個(gè)數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)存儲(chǔ)一個(gè)數(shù)據(jù)分片;冗余存儲(chǔ)節(jié)點(diǎn)的數(shù)量為M,每個(gè)冗余存儲(chǔ)節(jié)點(diǎn)存儲(chǔ)一個(gè)校驗(yàn)分片。
對(duì)業(yè)務(wù)數(shù)據(jù)而言,如果分布式存儲(chǔ)系統(tǒng)中存在故障存儲(chǔ)節(jié)點(diǎn),在故障存儲(chǔ)節(jié)點(diǎn)的數(shù)量不超過M個(gè)的情況下,僅對(duì)余下存儲(chǔ)節(jié)點(diǎn)正常寫入數(shù)據(jù)(數(shù)據(jù)分片或者校驗(yàn)分片)并不會(huì)造成數(shù)據(jù)丟失,因此寫入操作會(huì)被正常執(zhí)行。業(yè)務(wù)日志伴隨著分片進(jìn)行存儲(chǔ),每個(gè)存儲(chǔ)節(jié)點(diǎn)保存的業(yè)務(wù)日志相同。當(dāng)故障存儲(chǔ)節(jié)點(diǎn)恢復(fù)正常后,通過其他存儲(chǔ)節(jié)點(diǎn)的分片,可以恢復(fù)出未寫入的分片。然而,現(xiàn)有技術(shù)中,業(yè)務(wù)日志并沒有伴隨分片一起得到恢復(fù),因此所述恢復(fù)正常的存儲(chǔ)節(jié)點(diǎn)中雖然有分片,卻沒有業(yè)務(wù)日志。
在這種情況下,由于原本正常存儲(chǔ)節(jié)點(diǎn),在接收完分片后也可能發(fā)生故障。這意味著,每個(gè)存儲(chǔ)節(jié)點(diǎn)的業(yè)務(wù)日志都不可靠的,因此如果想要從分布式存儲(chǔ)系統(tǒng)中讀取業(yè)務(wù)日志,主機(jī)必須從M+1個(gè)存儲(chǔ)節(jié)點(diǎn)中獲得業(yè)務(wù)日志,對(duì)獲得的業(yè)務(wù)日志進(jìn)行合并歸納后才能獲得可靠的業(yè)務(wù)日志。獲取M+1個(gè)業(yè)務(wù)日志的并進(jìn)行歸納整理的過程,加重了主機(jī)的運(yùn)算資源消耗和時(shí)間等待。
發(fā)明內(nèi)容
提供一種日志,可以解決現(xiàn)有技術(shù)中,業(yè)務(wù)日志恢復(fù)速度慢的問題。
第一方面,本發(fā)明提供了一種日志恢復(fù)方法的實(shí)施例,應(yīng)用于目標(biāo)存儲(chǔ)節(jié)點(diǎn),所述目標(biāo)存儲(chǔ)節(jié)點(diǎn)發(fā)生故障,所述目標(biāo)存儲(chǔ)節(jié)點(diǎn)位于分布式存儲(chǔ)系統(tǒng)中,所述分布式存儲(chǔ)系統(tǒng)包括所述目標(biāo)存儲(chǔ)節(jié)點(diǎn)和正常存儲(chǔ)節(jié)點(diǎn),該方法包括:所述目標(biāo)存儲(chǔ)節(jié)點(diǎn)從故障狀態(tài)恢復(fù)到正常狀態(tài)后,向所述分布式存儲(chǔ)系統(tǒng)中的所述正常存儲(chǔ)節(jié)點(diǎn)發(fā)送獲取恢復(fù)日志的請(qǐng)求;所述目標(biāo)存儲(chǔ)節(jié)點(diǎn)接收其他存儲(chǔ)節(jié)點(diǎn)返回的所述恢復(fù)日志,所述恢復(fù)日志包括第一恢復(fù)日志記錄,所述第一恢復(fù)日志指示了需要恢復(fù)的業(yè)務(wù)日志;按照所述第一恢復(fù)日志的指示,所述目標(biāo)存儲(chǔ)節(jié)點(diǎn)向所述正常存儲(chǔ)節(jié)點(diǎn)發(fā)送獲取業(yè)務(wù)日志的請(qǐng)求;所述目標(biāo)存儲(chǔ)節(jié)點(diǎn)根據(jù)收到的業(yè)務(wù)日志,生成目標(biāo)業(yè)務(wù)日志;對(duì)所述目標(biāo)業(yè)務(wù)日志進(jìn)行保存。應(yīng)用該方案,主機(jī)可以隨時(shí)獲取業(yè)務(wù)日志,并且只需要從一個(gè)存儲(chǔ)節(jié)點(diǎn)獲取業(yè)務(wù)日志即可。過程簡單、延時(shí)低。
第一方面的第一種可能實(shí)現(xiàn)方式,在主機(jī)檢測到所述目標(biāo)存儲(chǔ)節(jié)點(diǎn)發(fā)生故障后,所述主機(jī)向正常存儲(chǔ)節(jié)點(diǎn)發(fā)送第一恢復(fù)日志,所述正常存儲(chǔ)節(jié)點(diǎn)接收主機(jī)發(fā)送的所述第一恢復(fù)日志并存儲(chǔ)。該方案為后續(xù)利用第一恢復(fù)日志來恢復(fù)業(yè)務(wù)日志提供了基礎(chǔ)。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于華為技術(shù)有限公司,未經(jīng)華為技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201611089594.3/2.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F11-00 錯(cuò)誤檢測;錯(cuò)誤校正;監(jiān)控
G06F11-07 .響應(yīng)錯(cuò)誤的產(chǎn)生,例如,容錯(cuò)
G06F11-22 .在準(zhǔn)備運(yùn)算或者在空閑時(shí)間期間內(nèi),通過測試作故障硬件的檢測或定位
G06F11-28 .借助于檢驗(yàn)標(biāo)準(zhǔn)程序或通過處理作錯(cuò)誤檢測、錯(cuò)誤校正或監(jiān)控
G06F11-30 .監(jiān)控
G06F11-36 .通過軟件的測試或調(diào)試防止錯(cuò)誤
- 一種數(shù)據(jù)庫讀寫分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測試終端的測試方法
- 一種服裝用人體測量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)
- 動(dòng)態(tài)存儲(chǔ)管理裝置及方法
- 一種存儲(chǔ)方法、服務(wù)器及存儲(chǔ)控制器
- 一種基于存儲(chǔ)系統(tǒng)的控制方法及裝置
- 一種信息的存儲(chǔ)控制方法
- 一種數(shù)據(jù)存儲(chǔ)方法及裝置
- 數(shù)據(jù)存儲(chǔ)方法、裝置、計(jì)算機(jī)設(shè)備以及存儲(chǔ)介質(zhì)
- 一種數(shù)據(jù)存儲(chǔ)控制方法及裝置
- 存儲(chǔ)設(shè)備、存儲(chǔ)系統(tǒng)及存儲(chǔ)方法
- 物料存儲(chǔ)方法及系統(tǒng)
- 基于雙芯智能電表的數(shù)據(jù)分類存儲(chǔ)方法和裝置





