本技術(shù)涉及大數(shù)據(jù)計算,具體而言,本技術(shù)涉及一種數(shù)據(jù)處理方法、裝置、電子設(shè)備及計算機可讀存儲介質(zhì)。
背景技術(shù):
1、隨著云計算的快速發(fā)展,dpu(data?processing?unit,數(shù)據(jù)處理器)被普遍應(yīng)用到各業(yè)務(wù)系統(tǒng)中,以滿足用戶日益增長的網(wǎng)絡(luò)和存儲需求。云計算要求業(yè)務(wù)系統(tǒng)能夠提供可靠、穩(wěn)定的服務(wù),以保障用戶業(yè)務(wù)的不間斷運轉(zhuǎn)。dpu服務(wù)于云計算,其主要作用是提升數(shù)據(jù)中心等算力基礎(chǔ)設(shè)施的效率,減少能耗浪費,進而降低成本。
2、現(xiàn)有技術(shù)中,dpu處理器一般采用硬件或軟硬件協(xié)同的方式模擬主機側(cè)設(shè)備,以完成虛擬化工作。例如,當前市場主流網(wǎng)卡主要使用硬件應(yīng)答tlp(transaction?layerpacket,事務(wù)層數(shù)據(jù)報文)方式對主機呈現(xiàn)設(shè)備拓撲,以響應(yīng)用戶的操作,在硬件應(yīng)答tlp方案中,當發(fā)生硬件故障后,硬件虛擬設(shè)備會進行重置操作,會清空用戶配置空間的數(shù)據(jù),使得主機側(cè)服務(wù)無法正常運行,導(dǎo)致業(yè)務(wù)中斷,無法保證系統(tǒng)的穩(wěn)定運行。
技術(shù)實現(xiàn)思路
1、本技術(shù)實施例提供了一種數(shù)據(jù)處理方法、裝置、電子設(shè)備及計算機可讀存儲介質(zhì),可以解決業(yè)務(wù)系統(tǒng)發(fā)生故障后所導(dǎo)致的業(yè)務(wù)中斷問題。所述技術(shù)方案如下:
2、根據(jù)本技術(shù)實施例的一個方面,提供了一種數(shù)據(jù)處理方法,應(yīng)用于業(yè)務(wù)處理系統(tǒng)中的處理器,業(yè)務(wù)處理系統(tǒng)還包括虛擬設(shè)備和主機,該方法包括:
3、在業(yè)務(wù)處理系統(tǒng)啟動、且虛擬設(shè)備配置完成后,從虛擬設(shè)備中獲取配置數(shù)據(jù);其中,配置數(shù)據(jù)用于表征業(yè)務(wù)處理系統(tǒng)的虛擬配置;
4、基于預(yù)設(shè)時間間隔對虛擬設(shè)備進行異常檢測;
5、當檢測到異常標識,向虛擬設(shè)備發(fā)送所獲取的配置數(shù)據(jù),以使虛擬設(shè)備基于接收到的配置數(shù)據(jù)進行數(shù)據(jù)恢復(fù),并向主機提供虛擬化服務(wù);其中,異常標識用于表征虛擬設(shè)備發(fā)生硬件或軟件異常重啟。
6、在一個可能的實現(xiàn)方式中,上述配置數(shù)據(jù)包括基礎(chǔ)配置數(shù)據(jù);
7、上述從虛擬設(shè)備中獲取配置數(shù)據(jù),包括:
8、基于預(yù)設(shè)時間間隔對虛擬設(shè)備進行信息查詢;
9、當查詢得到使能標簽,則向虛擬設(shè)備發(fā)送信息獲取請求,以獲取虛擬設(shè)備的基礎(chǔ)配置數(shù)據(jù);其中,使能標簽是虛擬設(shè)備響應(yīng)于主機發(fā)送的使能指令生成的;
10、存儲基礎(chǔ)配置數(shù)據(jù)。
11、在一個可能的實現(xiàn)方式中,上述配置數(shù)據(jù)包括增量配置數(shù)據(jù);
12、該方法還包括:
13、當查詢得到增量標簽,則從虛擬設(shè)備中獲取增量標簽對應(yīng)的增量配置數(shù)據(jù);其中,增量標簽是虛擬設(shè)備響應(yīng)于主機發(fā)送的設(shè)備操作指令生成的;
14、存儲增強配置數(shù)據(jù)。
15、在又一個可能的實現(xiàn)方式中,上述異常標識包括系統(tǒng)硬件異常標識;
16、上述當檢測到異常標識,向虛擬設(shè)備發(fā)送所獲取的配置數(shù)據(jù),包括:
17、當檢測到系統(tǒng)硬件異常標識,則發(fā)起冷重啟恢復(fù)程序,以向虛擬設(shè)備發(fā)送配置數(shù)據(jù);其中,硬件異常標識是在虛擬設(shè)備識別到硬件異常冷重啟后生成的。
18、在又一個可能的實現(xiàn)方式中,上述異常標識包括系統(tǒng)軟件異常標識;
19、上述當檢測到異常標識,向虛擬設(shè)備發(fā)送所獲取的配置數(shù)據(jù),包括:
20、當檢測到系統(tǒng)軟件異常標識,則向虛擬設(shè)備發(fā)送熱重啟恢復(fù)指令;其中,系統(tǒng)軟件異常標識是虛擬設(shè)備在預(yù)設(shè)時間段內(nèi)檢測到軟件異常熱重啟次數(shù)超過預(yù)設(shè)數(shù)值時,進行設(shè)備初始化后生成的;
21、當接收到虛擬設(shè)備發(fā)送的恢復(fù)失敗消息,則向虛擬設(shè)備發(fā)送配置數(shù)據(jù);其中,恢復(fù)失敗消息是在虛擬設(shè)備無法從預(yù)設(shè)存儲區(qū)域獲取配置數(shù)據(jù)時生成,并發(fā)送給處理器的。
22、在另一個可能的實現(xiàn)方式中,上述方法,還包括:
23、接收虛擬設(shè)備返回的恢復(fù)成功消息;其中,恢復(fù)成功消息是虛擬設(shè)備在數(shù)據(jù)恢復(fù)成功后發(fā)送的;
24、從進行數(shù)據(jù)恢復(fù)后的虛擬設(shè)備中獲取新的配置數(shù)據(jù);其中,新的配置數(shù)據(jù)用于在下一次檢測到異常標識時,使虛擬設(shè)備進行數(shù)據(jù)恢復(fù)。
25、根據(jù)本技術(shù)實施例的又一個方面,提供了一種數(shù)據(jù)處理方法,應(yīng)用于業(yè)務(wù)處理系統(tǒng)中的虛擬設(shè)備,該業(yè)務(wù)處理系統(tǒng)還包括處理器和主機,該方法包括:
26、接收處理器發(fā)送的數(shù)據(jù)獲取請求,響應(yīng)于數(shù)據(jù)獲取請求發(fā)送預(yù)生成的配置數(shù)據(jù)至處理器;其中,數(shù)據(jù)獲取請求是處理器在業(yè)務(wù)處理系統(tǒng)啟動、且虛擬設(shè)備配置完成后生成的;配置數(shù)據(jù)用于表征業(yè)務(wù)處理系統(tǒng)的虛擬配置;
27、當檢測到業(yè)務(wù)處理系統(tǒng)中的異常重啟,生成異常標識,以使處理器查詢異常標識,向虛擬設(shè)備發(fā)送配置數(shù)據(jù);其中,異常標識用于表征虛擬設(shè)備發(fā)生硬件或軟件異常重啟;
28、接收配置數(shù)據(jù),基于配置數(shù)據(jù)進行數(shù)據(jù)恢復(fù),并向主機提供虛擬化服務(wù);
29、在數(shù)據(jù)恢復(fù)成功后,向處理器返回恢復(fù)成功消息。
30、在另一個可能的實現(xiàn)方式中,上述接收處理器發(fā)送的數(shù)據(jù)獲取請求,響應(yīng)于數(shù)據(jù)獲取請求發(fā)送預(yù)生成的配置數(shù)據(jù)至處理器,包括:
31、在業(yè)務(wù)處理系統(tǒng)啟動后,響應(yīng)于主機發(fā)送的使能指令,生成使能標簽,以使處理器查詢得到使能標簽,并向虛擬設(shè)備發(fā)送信息獲取請求;
32、響應(yīng)于信息獲取請求,將預(yù)生成的基礎(chǔ)配置數(shù)據(jù)作為配置數(shù)據(jù)發(fā)送給處理器;
33、響應(yīng)于主機發(fā)送的設(shè)備操作指令,生成增量標簽,以使處理器查詢得到增量標簽,并向虛擬設(shè)備發(fā)送信息獲取請求;
34、響應(yīng)于信息獲取請求,將預(yù)生成的增量配置數(shù)據(jù)作為配置數(shù)據(jù)發(fā)送給處理器。
35、根據(jù)本技術(shù)實施例的另一個方面,提供了一種數(shù)據(jù)處理裝置,該裝置包括:
36、獲取模塊,用于在業(yè)務(wù)處理系統(tǒng)啟動、且虛擬設(shè)備配置完成后,從虛擬設(shè)備中獲取配置數(shù)據(jù);其中,配置數(shù)據(jù)用于表征業(yè)務(wù)處理系統(tǒng)的虛擬配置;
37、檢測模塊,用于基于預(yù)設(shè)時間間隔對虛擬設(shè)備進行異常檢測;
38、發(fā)送模塊,用于當檢測到異常標識,向虛擬設(shè)備發(fā)送所獲取的配置數(shù)據(jù),以使虛擬設(shè)備基于接收到的配置數(shù)據(jù)進行數(shù)據(jù)恢復(fù),并向主機提供虛擬化服務(wù);其中,異常標識用于表征虛擬設(shè)備發(fā)生硬件或軟件異常重啟。
39、在一個可能的實現(xiàn)方式中,上述配置數(shù)據(jù)包括基礎(chǔ)配置數(shù)據(jù);
40、上述獲取模塊在從虛擬設(shè)備中獲取配置數(shù)據(jù)時,用于:
41、基于預(yù)設(shè)時間間隔對虛擬設(shè)備進行信息查詢;
42、當查詢得到使能標簽,則向虛擬設(shè)備發(fā)送信息獲取請求,以獲取虛擬設(shè)備的基礎(chǔ)配置數(shù)據(jù);其中,使能標簽是虛擬設(shè)備響應(yīng)于主機發(fā)送的使能指令生成的;
43、存儲基礎(chǔ)配置數(shù)據(jù)。
44、在一個可能的實現(xiàn)方式中,上述配置數(shù)據(jù)包括增量配置數(shù)據(jù);
45、該獲取模塊,還用于:
46、當查詢得到增量標簽,則從虛擬設(shè)備中獲取增量標簽對應(yīng)的增量配置數(shù)據(jù);其中,增量標簽是虛擬設(shè)備響應(yīng)于主機發(fā)送的設(shè)備操作指令生成的;
47、存儲增強配置數(shù)據(jù)。
48、在又一個可能的實現(xiàn)方式中,上述異常標識包括系統(tǒng)硬件異常標識;上述發(fā)送模塊當檢測到異常標識,向虛擬設(shè)備發(fā)送所獲取的配置數(shù)據(jù)
49、時,用于:
50、當檢測到系統(tǒng)硬件異常標識,則發(fā)起冷重啟恢復(fù)程序,以向虛擬設(shè)備發(fā)送配置數(shù)據(jù);其中,硬件異常標識是在虛擬設(shè)備識別到硬件異常冷重啟后生成的。
51、在又一個可能的實現(xiàn)方式中,上述異常標識包括系統(tǒng)軟件異常標識;
52、上述發(fā)送模塊當檢測到異常標識,向虛擬設(shè)備發(fā)送所獲取的配置數(shù)據(jù)時,用于:
53、當檢測到系統(tǒng)軟件異常標識,則向虛擬設(shè)備發(fā)送熱重啟恢復(fù)指令;其中,系統(tǒng)軟件異常標識是虛擬設(shè)備在預(yù)設(shè)時間段內(nèi)檢測到軟件異常熱重啟次數(shù)超過預(yù)設(shè)數(shù)值時,進行設(shè)備初始化后生成的;
54、當接收到虛擬設(shè)備發(fā)送的恢復(fù)失敗消息,則向虛擬設(shè)備發(fā)送配置數(shù)據(jù);其中,恢復(fù)失敗消息是在虛擬設(shè)備無法從預(yù)設(shè)存儲區(qū)域獲取配置數(shù)據(jù)時生成,并發(fā)送給處理器的。
55、在另一個可能的實現(xiàn)方式中,上述裝置還包括接收模塊,用于:
56、接收虛擬設(shè)備返回的恢復(fù)成功消息;其中,恢復(fù)成功消息是虛擬設(shè)備在數(shù)據(jù)恢復(fù)成功后發(fā)送的;
57、從進行數(shù)據(jù)恢復(fù)后的虛擬設(shè)備中獲取新的配置數(shù)據(jù);其中,新的配置數(shù)據(jù)用于在下一次檢測到異常標識時,使虛擬設(shè)備進行數(shù)據(jù)恢復(fù)。
58、根據(jù)本技術(shù)實施例的另一個方面,提供了又一種數(shù)據(jù)處理裝置,該裝置包括:
59、響應(yīng)模塊,用于接收處理器發(fā)送的數(shù)據(jù)獲取請求,響應(yīng)于數(shù)據(jù)獲取請求發(fā)送預(yù)生成的配置數(shù)據(jù)至處理器;其中,數(shù)據(jù)獲取請求是處理器在業(yè)務(wù)處理系統(tǒng)啟動、且數(shù)據(jù)處理裝置配置完成后生成的;配置數(shù)據(jù)用于表征業(yè)務(wù)處理系統(tǒng)的虛擬配置;
60、生成模塊,用于當檢測到業(yè)務(wù)處理系統(tǒng)中的異常重啟,生成異常標識,以使處理器查詢異常標識,向數(shù)據(jù)處理裝置發(fā)送配置數(shù)據(jù),并向主機提供虛擬化服務(wù);其中,異常標識用于表征數(shù)據(jù)處理裝置發(fā)生硬件或軟件異常重啟;
61、恢復(fù)模塊,用于接收配置數(shù)據(jù),基于配置數(shù)據(jù)進行數(shù)據(jù)恢復(fù);
62、返回模塊,用于在數(shù)據(jù)恢復(fù)成功后,向處理器返回恢復(fù)成功消息。
63、在另一個可能的實現(xiàn)方式中,上述響應(yīng)模塊在接收處理器發(fā)送的數(shù)據(jù)獲取請求,響應(yīng)于數(shù)據(jù)獲取請求發(fā)送預(yù)生成的配置數(shù)據(jù)至處理器時,用于:
64、在業(yè)務(wù)處理系統(tǒng)啟動后,響應(yīng)于主機發(fā)送的使能指令,生成使能標簽,以使處理器查詢得到使能標簽,并向虛擬設(shè)備發(fā)送信息獲取請求;
65、響應(yīng)于信息獲取請求,將預(yù)生成的基礎(chǔ)配置數(shù)據(jù)作為配置數(shù)據(jù)發(fā)送給處理器;
66、響應(yīng)于主機發(fā)送的設(shè)備操作指令,生成增量標簽,以使處理器查詢得到增量標簽,并向虛擬設(shè)備發(fā)送信息獲取請求;
67、響應(yīng)于信息獲取請求,將預(yù)生成的增量配置數(shù)據(jù)作為配置數(shù)據(jù)發(fā)送給處理器。
68、根據(jù)本技術(shù)實施例的另一個方面,提供了一種電子設(shè)備,該電子設(shè)備包括:存儲器、處理器及存儲在存儲器上的計算機程序,上述處理器執(zhí)行計算機程序以實現(xiàn)本技術(shù)實施例第一方面所示方法的步驟。
69、根據(jù)本技術(shù)實施例的再一個方面,提供了一種計算機可讀存儲介質(zhì),其上存儲有計算機程序,該計算機程序被處理器執(zhí)行時實現(xiàn)本技術(shù)實施例第一方面所示方法的步驟。
70、根據(jù)本技術(shù)實施例的一個方面,提供了一種計算機程序產(chǎn)品,其包括計算機程序,該計算機程序被處理器執(zhí)行時實現(xiàn)本技術(shù)實施例第一方面所示方法的步驟。
71、本技術(shù)實施例提供的技術(shù)方案帶來的有益效果是:
72、本技術(shù)實施例在業(yè)務(wù)系統(tǒng)啟動后,處理器從配置好的虛擬設(shè)備中獲取配置數(shù)據(jù),并基于預(yù)設(shè)時間間隔對虛擬設(shè)備進行異常檢測,當檢測到異常標識,向虛擬設(shè)備發(fā)送所獲取的配置數(shù)據(jù),使得虛擬設(shè)備基于接收到的配置數(shù)據(jù)進行數(shù)據(jù)恢復(fù),并向主機提供虛擬化服務(wù);虛擬設(shè)備在數(shù)據(jù)恢復(fù)成功后發(fā)送恢復(fù)成功消息至處理器。由于異常標識用于表征虛擬設(shè)備發(fā)生硬件或軟件異常重啟,此時用戶配置空間的配置數(shù)據(jù)會被清空,虛擬設(shè)備在缺少配置數(shù)據(jù)的情況下無法正常對外提供服務(wù);本技術(shù)實施例在業(yè)務(wù)系統(tǒng)啟動后,通過處理器預(yù)先獲取配置數(shù)據(jù),在處理器檢測到異常標識時,向虛擬設(shè)備發(fā)送所獲取的配置數(shù)據(jù),以使虛擬設(shè)備基于接收到的配置數(shù)據(jù)快速完成數(shù)據(jù)恢復(fù);本技術(shù)實施例實現(xiàn)了在發(fā)生硬件或軟件異常重啟的場景下,虛擬設(shè)備能夠快速恢復(fù)異常前信息,對外提供異常前的業(yè)務(wù)服務(wù),并能保證主機側(cè)用戶無感對異常無感,保證了業(yè)務(wù)系統(tǒng)不中斷的穩(wěn)定運行,有效提升了用戶體驗。