本申請(qǐng)涉及計(jì)算機(jī),尤其涉及一種數(shù)據(jù)恢復(fù)方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)。
背景技術(shù):
1、隨著互聯(lián)網(wǎng)業(yè)務(wù)的蓬勃發(fā)展,業(yè)務(wù)數(shù)據(jù)量呈現(xiàn)爆發(fā)式增長(zhǎng)態(tài)勢(shì),因此在系統(tǒng)崩潰或重啟等意外情況下,如何快速地恢復(fù)數(shù)據(jù),減少業(yè)務(wù)中斷時(shí)間,是提高業(yè)務(wù)連續(xù)性和用戶體驗(yàn)的關(guān)鍵所在。
技術(shù)實(shí)現(xiàn)思路
1、本申請(qǐng)旨在至少在一定程度上解決相關(guān)技術(shù)中的技術(shù)問題之一。
2、為此,本申請(qǐng)的第一個(gè)目的在于提出一種數(shù)據(jù)恢復(fù)方法,以實(shí)現(xiàn)持久化數(shù)據(jù)的高速恢復(fù),提高數(shù)據(jù)恢復(fù)的效率和事務(wù)一致性。
3、本申請(qǐng)的第二個(gè)目的在于提出一種裝置。
4、本申請(qǐng)的第三個(gè)目的在于提出一種電子設(shè)備。
5、本申請(qǐng)的第四個(gè)目的在于提出一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。
6、本申請(qǐng)的第五個(gè)目的在于提出一種計(jì)算機(jī)程序產(chǎn)品。
7、為達(dá)上述目的,本申請(qǐng)第一方面實(shí)施例提出了一種數(shù)據(jù)恢復(fù)方法,包括:
8、查詢預(yù)寫日志wal,獲取所述wal中與當(dāng)前啟動(dòng)的目標(biāo)節(jié)點(diǎn)關(guān)聯(lián)的檢查點(diǎn)cp;
9、根據(jù)所述關(guān)聯(lián)的cp的時(shí)間戳,確定所述wal中是否存在與所述目標(biāo)節(jié)點(diǎn)關(guān)聯(lián)的未完成的cp線程;
10、根據(jù)所述wal中是否存在與所述目標(biāo)節(jié)點(diǎn)關(guān)聯(lián)的未完成的cp線程,確定所述目標(biāo)節(jié)點(diǎn)內(nèi)存數(shù)據(jù)的目標(biāo)恢復(fù)方式;
11、根據(jù)所述目標(biāo)恢復(fù)方式及所述wal中與所述目標(biāo)節(jié)點(diǎn)關(guān)聯(lián)的記錄,對(duì)所述目標(biāo)節(jié)點(diǎn)內(nèi)存數(shù)據(jù)進(jìn)行恢復(fù)。
12、為達(dá)上述目的,本申請(qǐng)第二方面實(shí)施例提出了一種數(shù)據(jù)恢復(fù)裝置,包括:
13、獲取模塊,用于查詢預(yù)寫日志wal,獲取所述wal中與當(dāng)前啟動(dòng)的目標(biāo)節(jié)點(diǎn)關(guān)聯(lián)的檢查點(diǎn)cp;
14、第一確定模塊,用于根據(jù)所述關(guān)聯(lián)的cp的時(shí)間戳,確定所述wal中是否存在與所述目標(biāo)節(jié)點(diǎn)關(guān)聯(lián)的未完成的cp線程;
15、第二確定模塊,用于根據(jù)所述wal中是否存在與所述目標(biāo)節(jié)點(diǎn)關(guān)聯(lián)的未完成的cp線程,確定所述目標(biāo)節(jié)點(diǎn)內(nèi)存數(shù)據(jù)的目標(biāo)恢復(fù)方式;
16、恢復(fù)模塊,用于根據(jù)所述目標(biāo)恢復(fù)方式及所述wal中與所述目標(biāo)節(jié)點(diǎn)關(guān)聯(lián)的記錄,對(duì)所述目標(biāo)節(jié)點(diǎn)內(nèi)存數(shù)據(jù)進(jìn)行恢復(fù)。
17、為達(dá)上述目的,本申請(qǐng)第三方面實(shí)施例提出了一種電子設(shè)備,包括:處理器,以及與所述處理器通信連接的存儲(chǔ)器;所述存儲(chǔ)器存儲(chǔ)計(jì)算機(jī)執(zhí)行指令;所述處理器執(zhí)行所述存儲(chǔ)器存儲(chǔ)的計(jì)算機(jī)執(zhí)行指令,以實(shí)現(xiàn)如第一方面實(shí)施例所述的數(shù)據(jù)恢復(fù)方法。
18、為達(dá)上述目的,本申請(qǐng)第四方面實(shí)施例提出了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中存儲(chǔ)有計(jì)算機(jī)執(zhí)行指令,所述計(jì)算機(jī)執(zhí)行指令被處理器執(zhí)行時(shí)用于實(shí)現(xiàn)如第一方面實(shí)施例中所述的數(shù)據(jù)恢復(fù)方法。
19、為達(dá)上述目的,本申請(qǐng)第五方面實(shí)施例提出了一種計(jì)算機(jī)程序產(chǎn)品,包括計(jì)算機(jī)程序,該計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)第一方面實(shí)施例中所述的數(shù)據(jù)恢復(fù)方法。
20、本申請(qǐng)?zhí)峁┑臄?shù)據(jù)恢復(fù)方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì),通過在預(yù)寫日志中確定是否包含與目標(biāo)進(jìn)行數(shù)據(jù)恢復(fù)的節(jié)點(diǎn)關(guān)聯(lián)未完成的檢查點(diǎn)線程,來確定不同的數(shù)據(jù)恢復(fù)方式,以對(duì)目標(biāo)節(jié)點(diǎn)內(nèi)存數(shù)據(jù)進(jìn)行恢復(fù),提高了數(shù)據(jù)恢復(fù)的效率,保證了數(shù)據(jù)恢復(fù)的事務(wù)一致性,提高了用戶體驗(yàn)。
21、本申請(qǐng)附加的方面和優(yōu)點(diǎn)將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過本申請(qǐng)的實(shí)踐了解到。
1.一種數(shù)據(jù)恢復(fù)方法,其特征在于,包括:
2.如權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述關(guān)聯(lián)的cp的時(shí)間戳,確定所述wal中是否存在與所述目標(biāo)節(jié)點(diǎn)關(guān)聯(lián)的未完成的cp線程,包括:
3.如權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述關(guān)聯(lián)的cp的時(shí)間戳,確定所述wal中是否存在與所述目標(biāo)節(jié)點(diǎn)關(guān)聯(lián)的未完成的cp線程,包括:
4.如權(quán)利要求1-3任一所述的方法,其特征在于,所述根據(jù)所述wal中是否存在與所述目標(biāo)節(jié)點(diǎn)關(guān)聯(lián)的未完成的cp線程,確定所述目標(biāo)節(jié)點(diǎn)內(nèi)存數(shù)據(jù)的目標(biāo)恢復(fù)方式,包括:
5.如權(quán)利要求4所述的方法,其特征在于,所述邏輯記錄包括以下各項(xiàng):數(shù)據(jù)記錄,事務(wù)記錄及檢查點(diǎn)記錄。
6.如權(quán)利要求1-3任一所述的方法,其特征在于,所述根據(jù)所述wal中是否存在與所述目標(biāo)節(jié)點(diǎn)關(guān)聯(lián)的未完成的cp線程,確定所述目標(biāo)節(jié)點(diǎn)內(nèi)存數(shù)據(jù)的目標(biāo)恢復(fù)方式,包括:
7.如權(quán)利要求1-3任一所述的方法,其特征在于,所述方法還包括:
8.一種數(shù)據(jù)恢復(fù)裝置,其特征在于,包括:
9.一種電子設(shè)備,其特征在于,包括:處理器,以及與所述處理器通信連接的存儲(chǔ)器;
10.一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其特征在于,所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中存儲(chǔ)有計(jì)算機(jī)執(zhí)行指令,所述計(jì)算機(jī)執(zhí)行指令被處理器執(zhí)行時(shí)用于實(shí)現(xiàn)如權(quán)利要求1-7中任一項(xiàng)所述的數(shù)據(jù)恢復(fù)方法。
11.一種計(jì)算機(jī)程序產(chǎn)品,其特征在于,包括計(jì)算機(jī)程序,該計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)權(quán)利要求1-7中任一項(xiàng)所述的數(shù)據(jù)恢復(fù)方法。