[發明專利]一種基于InnoDB的碎片文件恢復方法、裝置及存儲介質有效
| 申請號: | 201811225169.1 | 申請日: | 2018-10-19 |
| 公開(公告)號: | CN109408290B | 公開(公告)日: | 2021-02-26 |
| 發明(設計)人: | 梁德榮;田慶宜;黃建邦;沈長達;吳少華;張學君 | 申請(專利權)人: | 廈門市美亞柏科信息股份有限公司 |
| 主分類號: | G06F11/14 | 分類號: | G06F11/14;G06F16/28 |
| 代理公司: | 廈門福貝知識產權代理事務所(普通合伙) 35235 | 代理人: | 郝學江 |
| 地址: | 361000 福建省廈門市*** | 國省代碼: | 福建;35 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 innodb 碎片 文件 恢復 方法 裝置 存儲 介質 | ||
1.一種基于InnoDB的碎片文件恢復方法,其特征在于,該方法包括:
讀取步驟,從基于InnoDB的初始位置Offset=0開始讀取n字節數據作為InnoDB數據文件的一個數據頁,所述碎片文件是ibdata和/或ibd碎片文件;
匹配步驟,讀取所述數據頁的前4個字節記為校驗值CheckSum1,使用數據頁的折疊和校驗算法計算出所述數據頁的校驗值CheckSum2,判斷CheckSum1是否等于CheckSum2,如果否,則Offset=Offset+m,重新執行讀取步驟,如果是,則執行恢復步驟,所述使用數據頁的折疊和校驗算法計算出所述數據頁的校驗值CheckSum2的操作為:從所述數據頁的第4個字節開始取長度為22字節的一段數據進行折疊異或計算得到檢驗值為sum1,從所述數據頁的第38個字節開始取長度為n-46字節的一段數據進行折疊異或計算得到檢驗值為sum2,則該數據頁的校驗值Checksum2=sum1+sum2;
恢復步驟,讀取所述數據頁的頁號PageNo和該數據頁所屬文件的文件標識FileId,根據所述FileId進行數據頁的合并,并根據頁號PageNo在所屬文件內從小到大進行排序,然后令Offset=Offset+n,重新執行讀取步驟;
其中,m為一個數據偏移單位,n為一個數據頁的大小。
2.根據權利要求1所述的方法,其特征在于,
定義兩個整型數異或值算法,操作符設為**:設兩個4字節整型數a和b,異或值算法為:
a**b=(((((a^b^RANDOM_MASK)8)+a)^RANDOM_MASK2)+b);
即a異或b異或RANDOM_MASK的值左移8加a再異或RANDOM_MASK2加b;
所述折疊異或計算的操作為:設置折疊數fold初始值為0,按字節順序遍歷該段數據,設遍歷結構為數據集N{N1,N2,N3,..,Nm},依次按整型數異或值算法與fold進行計算,返回值更新到fold,即fold=fold**Ni,其中,1=i=m,RANDOM_MASK=1653893711,RANDOM_MASK2=1463735687。
3.根據權利要求2所述的方法,其特征在于,按字節順序遍歷該段數據形成數據集N{N1,N2,N3,..,Nm}的操作為:從該段數據的起始位置按照每四個字節讀出生成一個4字節整型數,如果最后剩余的數據小于4個字節,將剩余的字節數形成一個整數作為Nm。
4.一種基于InnoDB的碎片文件恢復裝置,其特征在于,該裝置包括:
讀取單元,用于從基于InnoDB的初始位置Offset=0開始讀取n字節數據作為InnoDB數據文件的一個數據頁,所述碎片文件是ibdata和/或ibd碎片文件;
匹配單元,用于讀取所述數據頁的前4個字節記為校驗值CheckSum1,使用數據頁的折疊和校驗算法計算出所述數據頁的校驗值CheckSum2,判斷CheckSum1是否等于CheckSum2,如果否,則Offset=Offset+m,重新執行讀取單元的操作,如果是,則執行恢復單元的操作,所述使用數據頁的折疊和校驗算法計算出所述數據頁的校驗值CheckSum2的操作為:從所述數據頁的第4個字節開始取長度為22字節的一段數據進行折疊異或計算得到檢驗值為sum1,從所述數據頁的第38個字節開始取長度為n-46字節的一段數據進行折疊異或計算得到檢驗值為sum2,則該數據頁的校驗值Checksum2=sum1+sum2;
恢復單元,用于讀取所述數據頁的頁號PageNo和該數據頁所屬文件的文件標識FileId,根據所述FileId進行數據頁的合并,并根據頁號PageNo在所屬文件內從小到大進行排序,然后令Offset=Offset+n,重新執行讀取單元的操作;
其中,m為一個數據偏移單位,n為一個數據頁的大小。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于廈門市美亞柏科信息股份有限公司,未經廈門市美亞柏科信息股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811225169.1/1.html,轉載請聲明來源鉆瓜專利網。





