• 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    一種日志回放方法、裝置、設(shè)備及計算機可讀存儲介質(zhì)制造方法及圖紙

    技術(shù)編號:26170780 閱讀:100 留言:0更新日期:2020-10-31 13:40
    本申請公開了一種日志回放方法、裝置、設(shè)備及計算機可讀存儲介質(zhì),應(yīng)用于分布式文件系統(tǒng),獲取日志系統(tǒng)中第一條有效日志的第一序號;獲取OSD本地文件系統(tǒng)中已寫入日志的第二序號;判斷第一序號與第二序號的差值是否大于1;若是,則將比第二序號大一個的日志序號作為第三序號;判斷日志系統(tǒng)中是否存在第三序號對應(yīng)的日志;若日志系統(tǒng)中存在第三序號對應(yīng)的日志,則從第三序號對應(yīng)的日志開始,對OSD本地文件系統(tǒng)進行日志回放。本申請中,在第一序號與第二序號的差值大于1的情況下,會將比第二序號大一個的日志序號作為第三序號,并通過第三序號在日志系統(tǒng)中查找第三序號對應(yīng)的日志,以此保證能夠日志回放的成功率。

    A log playback method, device, device and computer-readable storage medium

    【技術(shù)實現(xiàn)步驟摘要】
    一種日志回放方法、裝置、設(shè)備及計算機可讀存儲介質(zhì)
    本申請涉及分布式存儲
    ,更具體地說,涉及一種日志回放方法、系統(tǒng)、設(shè)備及計算機可讀存儲介質(zhì)。
    技術(shù)介紹
    在分布式文件系統(tǒng)中,OSD(Object-basedStorageDevice,對象存儲設(shè)備)的主要功能是存儲數(shù)據(jù)、復(fù)制數(shù)據(jù)、平衡數(shù)據(jù)、恢復(fù)數(shù)據(jù)等。一般情況下一塊硬盤對應(yīng)一個OSD,由OSD來對硬盤存儲進行管理。當(dāng)要往OSD中寫入數(shù)據(jù)時,需先將數(shù)據(jù)寫入日志系統(tǒng),再由日志系統(tǒng)寫入OSD本地文件系統(tǒng)中,也即一份數(shù)據(jù)需經(jīng)過兩次寫操作才能寫入OSD,由于寫日志系統(tǒng)和寫OSD本地文件系統(tǒng)是異步進行的,即由兩個不同的線程進行處理,所以寫入文件系統(tǒng)的日志序號和已經(jīng)寫入OSD本地文件系統(tǒng)的序號的進度是不一樣的,為了區(qū)分兩個序號,需要在日志系統(tǒng)中設(shè)置第一條有效日志的序號,及在OSD本地文件系統(tǒng)中設(shè)置已寫入OSD本地文件系統(tǒng)的最新日志序號,當(dāng)分布式文件系統(tǒng)發(fā)生掉電等異常情況時,需按照分布式文件系統(tǒng)中有效日志及之后的日志進行日志回放。然而,在日志回放過程中,可能出現(xiàn)OSD文件系統(tǒng)中的日志序號比日志系統(tǒng)中的日志序號小至少一號,由此在對分布式存儲系統(tǒng)進行日志回放時,無法在日志系統(tǒng)中找到要回放的日志的情況,導(dǎo)致日志回放失敗。綜上所述,如何提高分布式文件系統(tǒng)的日志回放成功率是目前本領(lǐng)域技術(shù)人員亟待解決的問題。
    技術(shù)實現(xiàn)思路
    本申請的目的是提供一種日志回放方法,其能在一定程度上解決如何提高分布式文件系統(tǒng)的日志回放成功率的技術(shù)問題。本申請還提供了一種日志回放裝置、設(shè)備及計算機可讀存儲介質(zhì)。為了實現(xiàn)上述目的,本申請?zhí)峁┤缦录夹g(shù)方案:一種日志回放方法,應(yīng)用于分布式文件系統(tǒng),包括:獲取日志系統(tǒng)中第一條有效日志的第一序號;獲取OSD本地文件系統(tǒng)中已寫入日志的第二序號;判斷所述第一序號與所述第二序號的差值是否大于1;若所述第一序號與所述第二序號的差值大于1,則將比所述第二序號大一個的日志序號作為第三序號;判斷所述日志系統(tǒng)中是否存在所述第三序號對應(yīng)的日志;若所述日志系統(tǒng)中存在所述第三序號對應(yīng)的日志,則從所述第三序號對應(yīng)的日志開始,對所述OSD本地文件系統(tǒng)進行日志回放。優(yōu)選的,所述判斷所述日志系統(tǒng)中是否存在所述第三序號對應(yīng)的日志,包括:將所述第一序號對應(yīng)的日志作為當(dāng)前日志;判斷所述日志系統(tǒng)中當(dāng)前日志之前的上一日志是否為所述第三序號對應(yīng)的日志;若上一日志并非所述第三序號對應(yīng)的日志,則判斷上一日志的序號是否小于所述第一序號,若上一日志的序號小于所述第一序號,則將上一日志作為當(dāng)前日志,返回執(zhí)行判斷所述日志系統(tǒng)中當(dāng)前日志之前的上一日志是否為所述第三序號對應(yīng)的日志的步驟,若上一日志的序號大于所述第一序號,則判定所述日志系統(tǒng)中不存在所述第三序號對應(yīng)的日志;若當(dāng)前日志的上一日志為所述第三序號對應(yīng)的日志,則判定所述日志系統(tǒng)中存在所述第三序號對應(yīng)的日志。優(yōu)選的,所述判斷所述日志系統(tǒng)中當(dāng)前日志之前的上一日志是否為所述第三序號對應(yīng)的日志,包括:在所述日志系統(tǒng)中,讀取上一日志尾部的日志頭信息;判斷所述日志頭信息中的日志序號是否為所述第三序號;若所述日志頭信息中的日志序號為所述第三序號,則基于所述日志頭信息獲取上一日志的日志數(shù)據(jù),計算所述日志數(shù)據(jù)的實時校驗值,判斷所述實時校驗值是否等于所述日志頭信息中的校驗值,若所述實時校驗值等于所述日志頭信息中的校驗值,則判定所述日志系統(tǒng)中當(dāng)前日志之前的上一日志為所述第三序號對應(yīng)的日志,若所述實時校驗值不等于所述日志頭信息中的校驗值,則判定所述日志系統(tǒng)中當(dāng)前日志之前的上一日志并非所述第三序號對應(yīng)的日志;若所述日志頭信息中的日志序號并非所述第三序號,則判定所述日志系統(tǒng)中當(dāng)前日志之前的上一日志并非所述第三序號對應(yīng)的日志。優(yōu)選的,所述基于所述日志頭信息獲取上一日志的日志數(shù)據(jù),包括:在所述日志頭信息中獲取日志數(shù)據(jù)長度、日志數(shù)據(jù)后補零長度;基于當(dāng)前日志的偏移地址、所述日志頭信息的長度、所述日志數(shù)據(jù)長度、所述日志數(shù)據(jù)后補零長度,讀取所述日志數(shù)據(jù)。優(yōu)選的,所述基于當(dāng)前日志的偏移地址、所述日志頭信息的長度、所述日志數(shù)據(jù)長度、所述日志數(shù)據(jù)后補零長度,讀取所述日志數(shù)據(jù),包括:計算當(dāng)前日志的偏移地址減去所述日志頭信息的長度后得到的第一偏移地址;計算所述第一偏移地址減去所述日志數(shù)據(jù)后補零長度后得到的第二偏移地址;判斷所述第二偏移地址是否小于所述日志數(shù)據(jù)長度;若所述第二偏移地址小于所述日志數(shù)據(jù)長度,則計算所述日志數(shù)據(jù)長度與所述第二偏移地址的長度差值,從所述日志系統(tǒng)的尾部向前讀取與所述長度差值相等的第一數(shù)據(jù),讀取所述日志系統(tǒng)的頭部到所述第二偏移地址間的第二數(shù)據(jù),將所述第一數(shù)據(jù)和所述第二數(shù)據(jù)合并為所述日志數(shù)據(jù);若所述第二偏移地址大于等于所述日志數(shù)據(jù)長度,則從所述第二偏移地址向前讀取與所述日志數(shù)據(jù)長度相等的所述日志數(shù)據(jù)。一種日志回放裝置,應(yīng)用于分布式文件系統(tǒng),包括:第一獲取模塊,用于獲取日志系統(tǒng)中第一條有效日志的第一序號;第二獲取模塊,用于獲取OSD本地文件系統(tǒng)中已寫入日志的第二序號;第一設(shè)置模塊,用于將比所述第二序號大一個的日志序號作為第三序號;第一判斷模塊,用于判斷所述日志系統(tǒng)中是否存在所述第三序號對應(yīng)的日志;若所述日志系統(tǒng)中存在所述第三序號對應(yīng)的日志,則從所述第三序號對應(yīng)的日志開始,對所述OSD本地文件系統(tǒng)進行日志回放。優(yōu)選的,所述第一判斷模塊包括:第一設(shè)置子模塊,用于將所述第一序號對應(yīng)的日志作為當(dāng)前日志;第一判斷子模塊,用于判斷所述日志系統(tǒng)中當(dāng)前日志之前的上一日志是否為所述第三序號對應(yīng)的日志;若上一日志并非所述第三序號對應(yīng)的日志,則判斷上一日志的序號是否小于所述第一序號,若上一日志的序號小于所述第一序號,則將上一日志作為當(dāng)前日志,返回執(zhí)行判斷所述日志系統(tǒng)中當(dāng)前日志之前的上一日志是否為所述第三序號對應(yīng)的日志的步驟,若上一日志的序號大于所述第一序號,則判定所述日志系統(tǒng)中不存在所述第三序號對應(yīng)的日志;若當(dāng)前日志的上一日志為所述第三序號對應(yīng)的日志,則判定所述日志系統(tǒng)中存在所述第三序號對應(yīng)的日志。優(yōu)選的,所述第一判斷子模塊包括:第一讀取單元,用于在所述日志系統(tǒng)中,讀取上一日志尾部的日志頭信息;第一判斷單元,用于判斷所述日志頭信息中的日志序號是否為所述第三序號;若所述日志頭信息中的日志序號為所述第三序號,則基于所述日志頭信息獲取上一日志的日志數(shù)據(jù),計算所述日志數(shù)據(jù)的實時校驗值,判斷所述實時校驗值是否等于所述日志頭信息中的校驗值,若所述實時校驗值等于所述日志頭信息中的校驗值,則判定所述日志系統(tǒng)中當(dāng)前日志之前的上一日志為所述第三序號對應(yīng)的日志,若所述實時校驗值不等于所述日志頭信息中的校驗值,則判定所述日志系統(tǒng)中當(dāng)前日志之前的上一日志并非所述第三序號對應(yīng)的日志;若所述日志頭信息中的日志序號并非所述第三序號,則判定所述日志系統(tǒng)中當(dāng)前日志之前本文檔來自技高網(wǎng)...

    【技術(shù)保護點】
    1.一種日志回放方法,其特征在于,應(yīng)用于分布式文件系統(tǒng),包括:/n獲取日志系統(tǒng)中第一條有效日志的第一序號;/n獲取OSD本地文件系統(tǒng)中已寫入日志的第二序號;/n判斷所述第一序號與所述第二序號的差值是否大于1;/n若所述第一序號與所述第二序號的差值大于1,則將比所述第二序號大一個的日志序號作為第三序號;/n判斷所述日志系統(tǒng)中是否存在所述第三序號對應(yīng)的日志;/n若所述日志系統(tǒng)中存在所述第三序號對應(yīng)的日志,則從所述第三序號對應(yīng)的日志開始,對所述OSD本地文件系統(tǒng)進行日志回放。/n

    【技術(shù)特征摘要】
    1.一種日志回放方法,其特征在于,應(yīng)用于分布式文件系統(tǒng),包括:
    獲取日志系統(tǒng)中第一條有效日志的第一序號;
    獲取OSD本地文件系統(tǒng)中已寫入日志的第二序號;
    判斷所述第一序號與所述第二序號的差值是否大于1;
    若所述第一序號與所述第二序號的差值大于1,則將比所述第二序號大一個的日志序號作為第三序號;
    判斷所述日志系統(tǒng)中是否存在所述第三序號對應(yīng)的日志;
    若所述日志系統(tǒng)中存在所述第三序號對應(yīng)的日志,則從所述第三序號對應(yīng)的日志開始,對所述OSD本地文件系統(tǒng)進行日志回放。


    2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述判斷所述日志系統(tǒng)中是否存在所述第三序號對應(yīng)的日志,包括:
    將所述第一序號對應(yīng)的日志作為當(dāng)前日志;
    判斷所述日志系統(tǒng)中當(dāng)前日志之前的上一日志是否為所述第三序號對應(yīng)的日志;
    若上一日志并非所述第三序號對應(yīng)的日志,則判斷上一日志的序號是否小于所述第一序號,若上一日志的序號小于所述第一序號,則將上一日志作為當(dāng)前日志,返回執(zhí)行判斷所述日志系統(tǒng)中當(dāng)前日志之前的上一日志是否為所述第三序號對應(yīng)的日志的步驟,若上一日志的序號大于所述第一序號,則判定所述日志系統(tǒng)中不存在所述第三序號對應(yīng)的日志;
    若當(dāng)前日志的上一日志為所述第三序號對應(yīng)的日志,則判定所述日志系統(tǒng)中存在所述第三序號對應(yīng)的日志。


    3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述判斷所述日志系統(tǒng)中當(dāng)前日志之前的上一日志是否為所述第三序號對應(yīng)的日志,包括:
    在所述日志系統(tǒng)中,讀取上一日志尾部的日志頭信息;
    判斷所述日志頭信息中的日志序號是否為所述第三序號;
    若所述日志頭信息中的日志序號為所述第三序號,則基于所述日志頭信息獲取上一日志的日志數(shù)據(jù),計算所述日志數(shù)據(jù)的實時校驗值,判斷所述實時校驗值是否等于所述日志頭信息中的校驗值,若所述實時校驗值等于所述日志頭信息中的校驗值,則判定所述日志系統(tǒng)中當(dāng)前日志之前的上一日志為所述第三序號對應(yīng)的日志,若所述實時校驗值不等于所述日志頭信息中的校驗值,則判定所述日志系統(tǒng)中當(dāng)前日志之前的上一日志并非所述第三序號對應(yīng)的日志;
    若所述日志頭信息中的日志序號并非所述第三序號,則判定所述日志系統(tǒng)中當(dāng)前日志之前的上一日志并非所述第三序號對應(yīng)的日志。


    4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述基于所述日志頭信息獲取上一日志的日志數(shù)據(jù),包括:
    在所述日志頭信息中獲取日志數(shù)據(jù)長度、日志數(shù)據(jù)后補零長度;
    基于當(dāng)前日志的偏移地址、所述日志頭信息的長度、所述日志數(shù)據(jù)長度、所述日志數(shù)據(jù)后補零長度,讀取所述日志數(shù)據(jù)。


    5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述基于當(dāng)前日志的偏移地址、所述日志頭信息的長度、所述日志數(shù)據(jù)長度、所述日志數(shù)據(jù)后補零長度,讀取所述日志數(shù)據(jù),包括:
    計算當(dāng)前日志的偏移地址減去所述日志頭信息的長度后得到的第一偏移地址;
    計算所述第一偏移地址減去所述日志數(shù)據(jù)后補零長度后得到的第二偏移地址;
    判斷所述第二偏移地址是否小于所述日志數(shù)據(jù)長度;
    若所述第二偏移地址...

    【專利技術(shù)屬性】
    技術(shù)研發(fā)人員:王慶海,孟祥瑞,
    申請(專利權(quán))人:廣東浪潮大數(shù)據(jù)研究有限公司,
    類型:發(fā)明
    國別省市:廣東;44

    網(wǎng)友詢問留言 已有0條評論
    • 還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 无码人妻品一区二区三区精99| 亚洲综合无码一区二区| 一本色道久久综合无码人妻| 人妻无码久久精品人妻| 国产精品无码专区AV在线播放| 亚洲午夜无码AV毛片久久| 小13箩利洗澡无码视频网站| 无码中文字幕乱码一区| 亚洲中文字幕无码久久综合网| 亚洲AV无码一区二区一二区| 亚洲色无码一区二区三区| 无码日韩人妻av一区免费| 亚洲精品无码乱码成人| 亚洲成A∨人片天堂网无码| 97久久精品亚洲中文字幕无码| 亚洲av无码成人精品区| 亚洲一区二区无码偷拍| 人妻丰满熟妇AV无码区乱| 国产aⅴ激情无码久久| 一本之道高清无码视频| 无码人妻丰满熟妇啪啪网站牛牛| 无码国产午夜福利片在线观看| 亚洲国产91精品无码专区| 特级毛片内射www无码| 久久精品无码专区免费青青| 久久人妻av无码中文专区| 中国无码人妻丰满熟妇啪啪软件| 一级电影在线播放无码| 永久免费无码日韩视频| 国产在线精品无码二区二区| 麻豆亚洲AV成人无码久久精品 | 亚洲av日韩av无码| 亚洲乱亚洲乱少妇无码| 免费无码又爽又黄又刺激网站| 日韩成人无码一区二区三区| 久久久无码精品人妻一区| 无码熟熟妇丰满人妻啪啪软件| 蜜芽亚洲av无码一区二区三区| 亚洲欧洲AV无码专区| 精品久久久久久久无码久中文字幕 | 午夜亚洲av永久无码精品|