本說(shuō)明書(shū)實(shí)施例屬于區(qū)塊鏈,尤其涉及一種世界狀態(tài)的回滾方法和計(jì)算機(jī)設(shè)備。
背景技術(shù):
1、區(qū)塊鏈(blockchain)是分布式數(shù)據(jù)存儲(chǔ)、點(diǎn)對(duì)點(diǎn)傳輸、共識(shí)機(jī)制、加密算法等計(jì)算機(jī)技術(shù)的新型應(yīng)用模式。區(qū)塊鏈系統(tǒng)中按照時(shí)間順序?qū)?shù)據(jù)區(qū)塊以順序相連的方式組合成鏈?zhǔn)綌?shù)據(jù)結(jié)構(gòu),并以密碼學(xué)方式保證的不可篡改和不可偽造的分布式賬本。由于區(qū)塊鏈具有去中心化、信息不可篡改、自治性等特性,區(qū)塊鏈也受到人們?cè)絹?lái)越多的重視和應(yīng)用。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明的目的在于提供一種世界狀態(tài)的回滾方法和計(jì)算機(jī)設(shè)備,包括:
2、一種世界狀態(tài)的回滾方法,包括:
3、讀取需要回滾的版本;
4、對(duì)于任一邏輯頁(yè),如果從內(nèi)存中讀取到包含所述回滾版本的增量頁(yè),且回滾版本并不是該增量頁(yè)中的最大版本,但無(wú)法在內(nèi)存中讀取到相關(guān)的基礎(chǔ)頁(yè),則從持久化存儲(chǔ)介質(zhì)中讀取所述相關(guān)的基礎(chǔ)頁(yè)/增量頁(yè);
5、如果在所述持久化介質(zhì)中讀取到所述相關(guān)的基礎(chǔ)頁(yè)/增量頁(yè),則將所述持久化介質(zhì)中的所述相關(guān)的基礎(chǔ)頁(yè)/增量頁(yè)讀取到內(nèi)存中;按照所述回滾版本對(duì)所述包含所述回滾版本的增量頁(yè)進(jìn)行拆分,將該增量頁(yè)拆分為包含所述版本及之前版本的第一拆分增量頁(yè)和所述回滾版本之后版本的第二拆分增量頁(yè),基于第一拆分增量頁(yè)及所述讀入內(nèi)存的相關(guān)基礎(chǔ)頁(yè)恢復(fù)內(nèi)存頁(yè),并刪除第二拆分增量頁(yè)。
6、一種世界狀態(tài)的回滾方法,包括:
7、讀取需要回滾的版本;
8、對(duì)于任一邏輯頁(yè),如果從內(nèi)存中讀取到與所述回滾版本相同版本的增量頁(yè),且回滾版本是該增量頁(yè)中的最大版本,但無(wú)法在內(nèi)存中讀取到相關(guān)的基礎(chǔ)頁(yè)/增量頁(yè),則從持久化存儲(chǔ)介質(zhì)中讀取所述相關(guān)的基礎(chǔ)頁(yè)/增量頁(yè);
9、如果在所述持久化介質(zhì)中讀取到所述相關(guān)的基礎(chǔ)頁(yè)/增量頁(yè),則將所述持久化介質(zhì)中的所述相關(guān)的基礎(chǔ)頁(yè)讀取到內(nèi)存中,在內(nèi)存中基于所述相關(guān)的基礎(chǔ)頁(yè)/增量頁(yè)和與所述回滾版本的增量頁(yè)恢復(fù)內(nèi)存頁(yè),并刪除內(nèi)存中所述回滾版本之后的基礎(chǔ)頁(yè)/增量頁(yè);
10、刪除所述持久化介質(zhì)中所述回滾版本之后的基礎(chǔ)頁(yè)/增量頁(yè)。
11、一種計(jì)算機(jī)設(shè)備,包括:
12、處理器;
13、以及存儲(chǔ)器,其中存儲(chǔ)有程序,其中在所述處理器執(zhí)行所述程序時(shí),執(zhí)行上述方法中任一項(xiàng)的操作。
1.一種世界狀態(tài)的回滾方法,包括:
2.如權(quán)利要求1所述的方法,所述方法還包括刪除所述內(nèi)存中所述回滾版本之后的基礎(chǔ)頁(yè)/增量頁(yè)。
3.如權(quán)利要求1所述的方法,所述方法還包括刪除所述持久化介質(zhì)中所述回滾版本之后的基礎(chǔ)頁(yè)/增量頁(yè)。
4.如權(quán)利要求1所述的方法,所述基于第一拆分增量頁(yè)及之前版本的基礎(chǔ)頁(yè)恢復(fù)內(nèi)存頁(yè),包括基于第一拆分增量頁(yè)及之前版本的基礎(chǔ)頁(yè)、增量頁(yè)恢復(fù)內(nèi)存頁(yè)。
5.如權(quán)利要求4所述的方法,所述之前版本的基礎(chǔ)頁(yè)包括小于回滾版本的最大基礎(chǔ)頁(yè)。
6.如權(quán)利要求4所述的方法,所述之前版本的增量頁(yè)包括小于回滾版本的最大基礎(chǔ)頁(yè)之后的增量頁(yè)。
7.一種世界狀態(tài)的回滾方法,包括:
8.如權(quán)利要求7所述的方法,
9.如權(quán)利要求8所述的方法,所述之前版本的基礎(chǔ)頁(yè)包括小于回滾版本的最大基礎(chǔ)頁(yè)。
10.如權(quán)利要求8所述的方法,所述之前版本的增量頁(yè)包括小于回滾版本的最大基礎(chǔ)頁(yè)之后的增量頁(yè)。
11.如權(quán)利要求1~10中任一項(xiàng)所述的方法,還包括更新元數(shù)據(jù)文件對(duì)應(yīng)的信息,以使待回滾數(shù)據(jù)不可被恢復(fù)到回滾到的內(nèi)存頁(yè)中。
12.一種世界狀態(tài)的回滾方法,包括將前臺(tái)i/o阻塞后執(zhí)行上述權(quán)利要求1~11中任一項(xiàng)所述的方法。
13.一種計(jì)算機(jī)設(shè)備,包括: