本發(fā)明涉及計(jì)算機(jī)領(lǐng)域,具體來說,涉及一種分布式實(shí)時(shí)文件系統(tǒng)的備份方法及備份系統(tǒng)。
背景技術(shù):
文件系統(tǒng)備份是一種常見的應(yīng)用場(chǎng)景?,F(xiàn)有技術(shù)的一種方法是在備份方案時(shí),業(yè)務(wù)需要全部離線,然后拷貝備份。在這種方法中,業(yè)務(wù)需要離線拷貝備份,這就需要兩套業(yè)務(wù)系統(tǒng),一套業(yè)務(wù)系統(tǒng)作為主業(yè)務(wù)節(jié)點(diǎn),另一套業(yè)務(wù)系統(tǒng)作為從業(yè)務(wù)節(jié)點(diǎn)。為了維護(hù)兩套業(yè)務(wù)系統(tǒng),需要定期維護(hù)數(shù)據(jù)的遷移,保持?jǐn)?shù)據(jù)的“一致性”。
現(xiàn)有技術(shù)的另一種方法是采用多份數(shù)據(jù)冗余作為集群,選擇一份完整的數(shù)據(jù)凍結(jié),作為有效靜態(tài)數(shù)據(jù),當(dāng)備份完成,將多份數(shù)據(jù)同步。在這種采用集群方式的方法中,需要選擇有效靜態(tài)數(shù)據(jù),以及需要同步集群間的冗余數(shù)據(jù),由此就會(huì)產(chǎn)生頻繁的數(shù)據(jù)傳輸和輸入輸出操作。
針對(duì)現(xiàn)有技術(shù)中需要定期維護(hù)數(shù)據(jù)的遷移以及頻繁的數(shù)據(jù)傳輸和輸入輸出操作問題,目前尚未提出有效的解決方案。
技術(shù)實(shí)現(xiàn)要素:
針對(duì)相關(guān)技術(shù)中需要定期維護(hù)數(shù)據(jù)的遷移以及頻繁的數(shù)據(jù)傳輸和輸入輸出操作問題,本發(fā)明提出一種分布式實(shí)時(shí)文件系統(tǒng)的備份方法及備份系統(tǒng),能夠使傳輸能力具有彈性擴(kuò)展的空間,提高對(duì)文件系統(tǒng)備份的能力。
本發(fā)明的技術(shù)方案是這樣實(shí)現(xiàn)的:根據(jù)本發(fā)明的一個(gè)方面,提供了一種分布式實(shí)時(shí)文件系統(tǒng)的備份方法。
該分布式實(shí)時(shí)文件系統(tǒng)的備份方法包括:主備份引擎獲取備份文件;主備份引擎將備份文件分解為備份任務(wù);主備份引擎根據(jù)多個(gè)本地備份客戶端的負(fù)載分發(fā)備份任務(wù);多個(gè)本地備份客戶端將備份任務(wù)的數(shù)據(jù)發(fā)送至其對(duì)端備份客戶端,對(duì)端備份客戶端將備份任務(wù)的數(shù)據(jù)寫入磁盤。
優(yōu)選地,備份任務(wù)為差分備份任務(wù)。
優(yōu)選地,主備份引擎將備份文件分解為備份任務(wù)包括:判斷新增加的文件和被修改過的文件,根據(jù)新增加的文件和被修改過的文件,按固定塊將備份文件劃分成差分備份任務(wù)。
優(yōu)選地,進(jìn)一步包括:對(duì)端備份客戶端對(duì)備份任務(wù)的數(shù)據(jù)進(jìn)行完整性判斷。
優(yōu)選地,進(jìn)一步包括:將差分備份任務(wù)的md5值與對(duì)端的md5值進(jìn)行比對(duì),得出差分?jǐn)?shù)據(jù),并將差分?jǐn)?shù)據(jù)拷貝到對(duì)端。
優(yōu)選地,在將備份文件分解為備份任務(wù)前,還包括:主備份引擎將備份文件分為大文件和小文件。
優(yōu)選地,進(jìn)一步包括:故障修復(fù)過程;故障修復(fù)過程包括:主備份引擎監(jiān)控各個(gè)本地備份客戶端的工作狀態(tài);在發(fā)現(xiàn)有工作異常的本地備份客戶端時(shí),主備份引擎將工作異常的本地備份客戶端上未完成的備份任務(wù)發(fā)送到其他工作正常的本地備份客戶端,并不再給工作異常的本地備份客戶端發(fā)送任務(wù)。
根據(jù)本發(fā)明的另一方面,提供了一種分布式實(shí)時(shí)文件系統(tǒng)的備份系統(tǒng)。
該分布式實(shí)時(shí)文件系統(tǒng)的備份系統(tǒng)包括:對(duì)端備份引擎;主備份引擎,用于從對(duì)端備份引擎獲取備份文件,將備份文件分解為備份任務(wù),根據(jù)多個(gè)本地備份客戶端的負(fù)載分發(fā)備份任務(wù);本地備份客戶端,用于傳輸數(shù)據(jù);對(duì)端備份客戶端,用于將備份任務(wù)的數(shù)據(jù)寫入磁盤。
優(yōu)選地,對(duì)端備份客戶端還用于判斷備份任務(wù)的數(shù)據(jù)的完整性。
本發(fā)明通過采用分布式的本地備份客戶端,并由主備份引擎管理控制本地備份客戶端,使傳輸能力具有彈性擴(kuò)展的空間,提高了對(duì)文件系統(tǒng)備份的能力。
附圖說明
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1是根據(jù)本發(fā)明實(shí)施例的分布式實(shí)時(shí)文件系統(tǒng)的備份方法的流程圖;
圖2是根據(jù)本發(fā)明另一實(shí)施例的分布式實(shí)時(shí)文件系統(tǒng)的備份方法的流程圖;
圖3是根據(jù)本發(fā)明實(shí)施例的故障修復(fù)過程的流程圖。
具體實(shí)施方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
根據(jù)本發(fā)明的實(shí)施例,提供了一種分布式實(shí)時(shí)文件系統(tǒng)的備份方法。
如圖1所示,根據(jù)本發(fā)明實(shí)施例的分布式文件系統(tǒng)的事務(wù)處理方法包括以下步驟:
S101,主備份引擎獲取備份文件;
S103,主備份引擎將備份文件分解為備份任務(wù);
S105,主備份引擎根據(jù)多個(gè)本地備份客戶端的負(fù)載分發(fā)備份任務(wù);
S107,多個(gè)本地備份客戶端將備份任務(wù)的數(shù)據(jù)發(fā)送至其對(duì)端備份客戶端,對(duì)端備份客戶端將備份任務(wù)的數(shù)據(jù)寫入磁盤。
下面為了更好的理解本發(fā)明的上述技術(shù)方案,下面結(jié)合圖2來對(duì)本發(fā)明的上述技術(shù)方案進(jìn)行詳細(xì)闡述,分布式實(shí)時(shí)文件系統(tǒng)的備份方法包括以下步驟:
a1,獲取對(duì)端監(jiān)控信息,主備份引擎請(qǐng)求從對(duì)端備份引擎?zhèn)浞菪畔ⅲ?/p>
a2,應(yīng)答獲取監(jiān)控信息,對(duì)端備份引擎應(yīng)答并返回信息;
a3,報(bào)告本地備份客戶端狀態(tài),主備份引擎監(jiān)控本地客戶端的負(fù)載情況及工作狀態(tài);
a4,根據(jù)狀態(tài)分發(fā)備份任務(wù),主備份引擎選擇適合的本地備份客戶端并向其分發(fā)備份任務(wù);
a5,傳輸數(shù)據(jù),本地備份客戶端發(fā)送備份數(shù)據(jù)給對(duì)端備份客戶端;
a6,對(duì)端備份客戶端應(yīng)答任務(wù)完成。
其中,在一個(gè)實(shí)施例中,備份任務(wù)為差分備份任務(wù)。
其中,主備份引擎將備份文件分解為差分備份任務(wù)包括:判斷新增加的文件和被修改過的文件,根據(jù)新增加的文件和被修改過的文件,按固定塊將備份文件劃分成差分備份任務(wù)。
其中,對(duì)端備份客戶端對(duì)備份任務(wù)的數(shù)據(jù)進(jìn)行完整性判斷。
其中,進(jìn)一步地,將差分備份任務(wù)的md5(Message-Digest Algorithm 5,信息-摘要算法5)值與對(duì)端的md5值進(jìn)行比對(duì),得出差分?jǐn)?shù)據(jù),并將差分?jǐn)?shù)據(jù)拷貝到對(duì)端。
另外,在一個(gè)實(shí)施例中,在將備份文件分解為備份任務(wù)前,還包括:主備份引擎將備份文件分為大文件和小文件。
此外,在一個(gè)實(shí)施例中,進(jìn)一步包括故障修復(fù)過程。該故障修復(fù)過程包括:主備份引擎監(jiān)控各個(gè)本地備份客戶端的工作狀態(tài);在發(fā)現(xiàn)有工作異常的本地備份客戶端時(shí),主備份引擎將工作異常的本地備份客戶端上未完成的備份任務(wù)發(fā)送到其他工作正常的本地備份客戶端,并不再給工作異常的本地備份客戶端發(fā)送任務(wù)。
具體到圖3中的故障修復(fù)過程的工作流程,實(shí)現(xiàn)故障修復(fù)過程可以包括以下步驟:
b1,主備份引擎監(jiān)控到本地備份客戶端的備份故障信息;
b2,主備份引擎向其他工作正常的本地備份客戶端重發(fā)未完成的備份任務(wù);
b3,傳輸數(shù)據(jù),工作正常的本地備份客戶端接收到重發(fā)的未完成的備份任務(wù)后,發(fā)送備份數(shù)據(jù)給對(duì)端備份客戶端;
b4,對(duì)端備份客戶端應(yīng)答任務(wù)完成。
根據(jù)本發(fā)明的實(shí)施例,還提供了一種分布式實(shí)時(shí)文件系統(tǒng)的備份系統(tǒng)。
該分布式實(shí)時(shí)文件系統(tǒng)的備份系統(tǒng)包括:
對(duì)端備份引擎;
主備份引擎,用于從對(duì)端備份引擎獲取備份文件,將備份文件分解為備份任務(wù),根據(jù)多個(gè)本地備份客戶端的負(fù)載分發(fā)備份任務(wù);
本地備份客戶端,用于傳輸數(shù)據(jù);
對(duì)端備份客戶端,用于將備份任務(wù)的數(shù)據(jù)寫入磁盤。
其中,在一個(gè)實(shí)施例中,對(duì)端備份客戶端還用于判斷備份任務(wù)的數(shù)據(jù)的完整性。
綜上所述,借助于本發(fā)明的上述技術(shù)方案,通過采用分布式的本地備份客戶端,并由主備份引擎管理控制本地備份客戶端,使傳輸能力具有彈性擴(kuò)展的空間,提高了對(duì)文件系統(tǒng)備份的能力。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。