[發(fā)明專利]基于非易失內(nèi)存設(shè)備的數(shù)據(jù)去冗余系統(tǒng)有效
| 申請?zhí)枺?/td> | 201710077383.6 | 申請日: | 2017-02-14 |
| 公開(公告)號: | CN106775501B | 公開(公告)日: | 2019-06-11 |
| 發(fā)明(設(shè)計(jì))人: | 李丁丁;唐立杰;田曉甲;湯庸 | 申請(專利權(quán))人: | 華南師范大學(xué) |
| 主分類號: | G06F3/06 | 分類號: | G06F3/06 |
| 代理公司: | 廣州粵高專利商標(biāo)代理有限公司 44102 | 代理人: | 林瑞云 |
| 地址: | 510660 *** | 國省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 基于 非易失 內(nèi)存 設(shè)備 數(shù)據(jù) 冗余 方法 系統(tǒng) | ||
1.一種基于非易失內(nèi)存設(shè)備的數(shù)據(jù)去冗余系統(tǒng),其特征在于,包括
基于NVRAM的新型內(nèi)核文件系統(tǒng)模塊,為一制定文件系統(tǒng),位于內(nèi)核的文件系統(tǒng)層次,
可以改進(jìn)傳統(tǒng)文件系統(tǒng)在NVRAM設(shè)備上的性能不足之處和功能冗余,同時(shí)向位于用戶空間的各類進(jìn)程提供一套與NVRAM交互、同時(shí)兼容現(xiàn)有標(biāo)準(zhǔn)的讀寫接口;
用戶空間文件系統(tǒng)模塊,為一個位于用戶空間中的特殊進(jìn)程,可以向其他進(jìn)程提供與NVRAM進(jìn)行交互的中間層或者虛擬層;
數(shù)據(jù)去冗余方法及其系統(tǒng)整合方式模塊,提供具體的去冗余邏輯給所述的用戶空間文件系統(tǒng);其中,所述的數(shù)據(jù)去冗余方法及其系統(tǒng)整合方式模塊包括:
數(shù)據(jù)指紋倉庫,用于存儲塊文件數(shù)據(jù)指紋,所述的數(shù)據(jù)指紋是指塊文件的哈希值;
文件塊表,每張文件塊表代表著一個文件,每張文件塊表存儲著該文件所引用的塊文件;
文件引用數(shù)表,用于存儲每個塊文件的被引用數(shù);
FUSE標(biāo)準(zhǔn)讀寫接口,處于FUSE進(jìn)程中,包含去冗余讀寫邏輯,與所述的數(shù)據(jù)指紋倉庫、文件塊表、文件引用數(shù)表和其他模塊進(jìn)行數(shù)據(jù)交換;
更具體的,數(shù)據(jù)去冗余方法及其系統(tǒng)整合方式模塊中,所述的讀寫邏輯中讀取邏輯包括如下步驟:
S1,根據(jù)普通進(jìn)程調(diào)用的讀系統(tǒng)調(diào)用接口中的路徑參數(shù)以及具體讀取位置參數(shù),找到其想要打開的文件及其所對應(yīng)的文件塊表;
S2,根據(jù)文件塊表中的條目以及所述的具體讀取位置參數(shù),找到該文件內(nèi)部在本次讀取操作中所涉及到的塊文件,及其文件名和大小;
S3,循環(huán)讀取涉及到的一個或者多個塊文件,直至讀取完所有要讀取的數(shù)據(jù)或者是讀取到文件尾;
S4,將讀取到的數(shù)據(jù)返回給普通進(jìn)程,本次讀取流程結(jié)束;
更具體的,數(shù)據(jù)去冗余方法及其系統(tǒng)整合方式模塊中,所述的讀寫邏輯中寫入邏輯包括如下步驟:
S1,根據(jù)普通進(jìn)程調(diào)用的寫系統(tǒng)調(diào)用接口中的路徑參數(shù)以及起始寫入位置參數(shù),找到對應(yīng)的文件及其所對應(yīng)的文件塊表;
S2,將文件塊表讀取到內(nèi)存鏈表之中,可定義為文件塊鏈表,該鏈表每個節(jié)點(diǎn)包含著一個數(shù)據(jù)指紋、對應(yīng)的塊文件大小和尾部標(biāo)記,尾部標(biāo)記即為標(biāo)志著該塊文件為該文件的文件尾的一個標(biāo)記;
S3,根據(jù)所述的具體寫入位置參數(shù)計(jì)算要寫入的塊文件所在文件塊鏈表的位置,對這種情況分類處理;
S4,若要寫入的位置位于鏈表內(nèi),則先將目標(biāo)塊文件的數(shù)據(jù)讀取出來,放至內(nèi)存區(qū)域中,該區(qū)域大小為一個粒度大小,其中該區(qū)域?yàn)镕USE進(jìn)程的地址空間,此后,將要寫入的數(shù)據(jù)寫入到所述的區(qū)域之中覆蓋原有數(shù)據(jù),然后計(jì)算其哈希值得到這組數(shù)據(jù)的數(shù)據(jù)指紋,利用哈希值搜索數(shù)據(jù)指紋倉庫,尋找是否有其他塊文件具有相同的哈希值,如果有則不用寫入,將該哈希值替換掉文件塊鏈表中的目標(biāo)塊文件的哈希值對象;如果沒有相同內(nèi)容的塊,則將所述的數(shù)據(jù)寫入數(shù)據(jù)倉庫,成為新的臨時(shí)塊文件,并且用數(shù)據(jù)指紋和文件大小替換掉文件塊鏈表中的目標(biāo)塊文件的對象;若鏈表不足以存儲完則創(chuàng)建新節(jié)點(diǎn)繼續(xù)寫入,直至寫入完所有要寫入的數(shù)據(jù),本次寫入流程結(jié)束;
S5,若要寫入的塊文件位置超出文件鏈表,則以‘\0’字符填充最后一個鏈表節(jié)點(diǎn),并創(chuàng)造新節(jié)點(diǎn)以擴(kuò)展鏈表長度,直至寫入的位置位于鏈表內(nèi);
S6,先將目標(biāo)塊文件的數(shù)據(jù)讀取出來,放至內(nèi)存區(qū)域中,該區(qū)域大小為粒度大小,其中該區(qū)域?yàn)镕USE進(jìn)程的地址空間,此后,將要寫入的數(shù)據(jù)寫入到所述的區(qū)域之中覆蓋原有數(shù)據(jù),然后計(jì)算其哈希值得到這組數(shù)據(jù)的數(shù)據(jù)指紋,利用哈希值搜索數(shù)據(jù)指紋倉庫,尋找是否有其他塊文件具有相同的哈希值,如果有則不用寫入,將該哈希值替換掉文件塊鏈表中的目標(biāo)塊文件的哈希值對象;如果沒有相同內(nèi)容的塊文件,則將所述的數(shù)據(jù)寫入數(shù)據(jù)倉庫,成為新的臨時(shí)塊文件,并且用數(shù)據(jù)指紋和文件大小替換掉文件塊鏈表中的目標(biāo)塊文件的對象,并創(chuàng)建新節(jié)點(diǎn)以擴(kuò)展鏈表,直至寫入完所有要寫入的數(shù)據(jù),本次寫入流程結(jié)束;
S7,將現(xiàn)在的數(shù)據(jù)塊鏈表與存儲在文件內(nèi)的數(shù)據(jù)塊表從頭相比對,同一個位置,若鏈表中引用了的而文件內(nèi)的數(shù)據(jù)塊表未引用的則在文件引用表上進(jìn)行更新,將未引用的文件引用數(shù)減一,新引用的文件引用數(shù)加一。
2.根據(jù)權(quán)利要求1所述的基于非易失內(nèi)存設(shè)備的數(shù)據(jù)去冗余系統(tǒng),其特征在于,所述的基于NVRAM的新型內(nèi)核文件系統(tǒng)模塊可選擇基于GPL協(xié)議的開源項(xiàng)目中的PMFS實(shí)現(xiàn)。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于華南師范大學(xué),未經(jīng)華南師范大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710077383.6/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F3-00 用于將所要處理的數(shù)據(jù)轉(zhuǎn)變成為計(jì)算機(jī)能夠處理的形式的輸入裝置;用于將數(shù)據(jù)從處理機(jī)傳送到輸出設(shè)備的輸出裝置,例如,接口裝置
G06F3-01 .用于用戶和計(jì)算機(jī)之間交互的輸入裝置或輸入和輸出組合裝置
G06F3-05 .在規(guī)定的時(shí)間間隔上,利用模擬量取樣的數(shù)字輸入
G06F3-06 .來自記錄載體的數(shù)字輸入,或者到記錄載體上去的數(shù)字輸出
G06F3-09 .到打字機(jī)上去的數(shù)字輸出
G06F3-12 .到打印裝置上去的數(shù)字輸出
- 將數(shù)據(jù)存儲在非易失性高速緩沖存儲器中的設(shè)備和方法
- 抑制寄生電荷積累的非易失性存儲器件及其操作方法
- 非易失性存儲裝置、非易失性存儲系統(tǒng)及存取裝置
- 非易失性存儲門及其動作方法、及非易失性存儲門裝入型邏輯電路及其動作方法
- 從非易失性塊存儲設(shè)備至處理設(shè)備的健康報(bào)告
- 非易失性數(shù)據(jù)備份和恢復(fù)方法
- 非易失內(nèi)存的管理方法和相關(guān)裝置
- 基于通信終端的非易失參數(shù)的恢復(fù)和/或更新方法及系統(tǒng)
- 基于一對多頁面映射的非易失內(nèi)存數(shù)據(jù)一致性更新方法
- 一種非易失性數(shù)據(jù)的讀寫方法及裝置
- 傳感設(shè)備、檢索設(shè)備和中繼設(shè)備
- 簽名設(shè)備、檢驗(yàn)設(shè)備、驗(yàn)證設(shè)備、加密設(shè)備及解密設(shè)備
- 色彩調(diào)整設(shè)備、顯示設(shè)備、打印設(shè)備、圖像處理設(shè)備
- 驅(qū)動設(shè)備、定影設(shè)備和成像設(shè)備
- 發(fā)送設(shè)備、中繼設(shè)備和接收設(shè)備
- 定點(diǎn)設(shè)備、接口設(shè)備和顯示設(shè)備
- 傳輸設(shè)備、DP源設(shè)備、接收設(shè)備以及DP接受設(shè)備
- 設(shè)備綁定方法、設(shè)備、終端設(shè)備以及網(wǎng)絡(luò)側(cè)設(shè)備
- 設(shè)備、主設(shè)備及從設(shè)備
- 設(shè)備向設(shè)備轉(zhuǎn)發(fā)





