一種分布式文件系統(tǒng)的主備機制數(shù)據(jù)傳輸方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及主備機制數(shù)據(jù)傳輸領(lǐng)域,尤其涉及一種分布式文件系統(tǒng)的主備機制數(shù)據(jù)傳輸方法及裝置。
【背景技術(shù)】
[0002]在分布式存儲系統(tǒng)中,對數(shù)據(jù)以及信息資源的描述性信息稱為元數(shù)據(jù),對元數(shù)據(jù)的管理通采用集中式元數(shù)據(jù)服務(wù)模型。
[0003]為了提高元數(shù)據(jù)的可靠性,以避免當(dāng)元數(shù)據(jù)服務(wù)器因為某些原因無法正常工作的時候,導(dǎo)致整個分布式存儲系統(tǒng)無法工作。因此,需要對元數(shù)據(jù)服務(wù)器提供一個備份元數(shù)據(jù)服務(wù)器,接管出現(xiàn)問題的主元數(shù)據(jù)機服務(wù)器的工作,保證整個系統(tǒng)可以正常運行。為了保證主備元數(shù)據(jù)服務(wù)器之間的強一致性,數(shù)據(jù)在主備元數(shù)據(jù)服務(wù)器之間傳輸需要做同步操作,目前,主備元數(shù)據(jù)服務(wù)器之間采用同步復(fù)制數(shù)據(jù)的方式和異步復(fù)制數(shù)據(jù)的方式進行數(shù)據(jù)備份。
[0004]參閱圖1所示,主備元數(shù)據(jù)服務(wù)器采用同步復(fù)制數(shù)據(jù)的方式備份數(shù)據(jù)的流程為:流程1,客戶端將數(shù)據(jù)發(fā)送至主元數(shù)據(jù)服務(wù)器;流程2,主元數(shù)據(jù)服務(wù)器處理完成并保存本地后,將數(shù)據(jù)再發(fā)送到備元數(shù)據(jù)服務(wù)器;流程3,備元數(shù)據(jù)服務(wù)器將數(shù)據(jù)保存本地進行備份,并確定備份完成后返回主元數(shù)據(jù)服務(wù)器備份完成通知消息;流程4,主元數(shù)據(jù)服務(wù)器通過路由器將處理完成消息返回至客戶端,本次輸入輸出(Input/Output,I/O)操作完成。
[0005]參閱圖2所示,主備元數(shù)據(jù)服務(wù)器采用異步復(fù)制數(shù)據(jù)的方式備份數(shù)據(jù)的流程為:流程1,客戶端將數(shù)據(jù)發(fā)送至主元數(shù)據(jù)服務(wù)器;流程2,主元數(shù)據(jù)服務(wù)器收到數(shù)據(jù)后,在指定內(nèi)存區(qū)域進行保存,并將需要持久化的數(shù)據(jù)保存到本地,處理數(shù)據(jù)完成后通過路由器將處理完成消息返回至客戶端;流程3,待備元數(shù)據(jù)服務(wù)器在某一特定時間段主動發(fā)起連接時,主元數(shù)據(jù)服務(wù)器確定備元數(shù)據(jù)服務(wù)器機連接成功后,將內(nèi)存中保存的數(shù)據(jù)通過內(nèi)部的心跳線,根據(jù)傳輸控制協(xié)議及網(wǎng)絡(luò)互連協(xié)議(Transmiss1n Control Protocol/InternetProtocol, TCP/IP)發(fā)送到備元數(shù)據(jù)服務(wù)器;流程4,備元數(shù)據(jù)服務(wù)器確定備份完成后返回主元數(shù)據(jù)服務(wù)器備份完成通知消息,并斷開連接,從而本次1/0操作完成。
[0006]然而,采用同步復(fù)制數(shù)據(jù)的方式備份數(shù)據(jù),主元數(shù)據(jù)服務(wù)器需要等待備元數(shù)據(jù)服務(wù)器復(fù)制完成后,才可以返回客戶端處理完成消息,雖然保證了一致性,但是主備元數(shù)據(jù)服務(wù)器進行備份流程耗費時間和信令,導(dǎo)致系統(tǒng)的工作效率降低;采用異步復(fù)制數(shù)據(jù)的方式備份數(shù)據(jù),備元數(shù)據(jù)服務(wù)器需要根據(jù)預(yù)設(shè)的周期,主動請求與主元數(shù)據(jù)服務(wù)器建立連接,才可以進行數(shù)據(jù)備份,在主元數(shù)據(jù)服務(wù)器負載較大時進行數(shù)據(jù)備份,導(dǎo)致影響了主元數(shù)據(jù)服務(wù)器的業(yè)務(wù)處理效率,且由備元數(shù)據(jù)服務(wù)器發(fā)起備份任務(wù)時,需要進行多次握手協(xié)議操作,增加了網(wǎng)絡(luò)的負擔(dān)。
[0007]總之,目前的主備之間采用同步復(fù)制數(shù)據(jù)的方式時,會耗費時間和信令,導(dǎo)致系統(tǒng)的工作效率降低,采用異步復(fù)制數(shù)據(jù)的方式時,需要進行多次握手協(xié)議操作,增加了網(wǎng)絡(luò)的負擔(dān),且影響主元數(shù)據(jù)服務(wù)器的業(yè)務(wù)處理效率。
【發(fā)明內(nèi)容】
[0008]本發(fā)明實施例提供一種分布式文件系統(tǒng)的主備機制數(shù)據(jù)傳輸方法及裝置,用以解決現(xiàn)有技術(shù)中存在的主備之間采用同步復(fù)制數(shù)據(jù)的方式時,會耗費時間和信令,導(dǎo)致系統(tǒng)的工作效率降低,采用異步復(fù)制數(shù)據(jù)的方式時,需要進行多次握手協(xié)議操作,增加了網(wǎng)絡(luò)的負擔(dān),且影響主元數(shù)據(jù)服務(wù)器的業(yè)務(wù)處理效率的問題。
[0009]本發(fā)明實施例提供的具體技術(shù)方案如下:
[0010]—種分布式文件系統(tǒng)的主備機制數(shù)據(jù)傳輸方法,包括:
[0011]主元數(shù)據(jù)服務(wù)器確定備元數(shù)據(jù)服務(wù)器開機啟動后,與所述備元數(shù)據(jù)服務(wù)器建立連接;
[0012]所述主元數(shù)據(jù)服務(wù)器接收到客戶端發(fā)送的數(shù)據(jù)請求后,根據(jù)所述數(shù)據(jù)請求確定對應(yīng)的備份類型,并對所述數(shù)據(jù)請求攜帶的數(shù)據(jù)進行數(shù)據(jù)處理,以及將處理后的數(shù)據(jù)保存在指定內(nèi)存中;
[0013]所述主元數(shù)據(jù)服務(wù)器根據(jù)所述備份類型將所述指定內(nèi)存中的數(shù)據(jù)發(fā)送至所述備元數(shù)據(jù)服務(wù)器。
[0014]采用這種方法,采用異步復(fù)制數(shù)據(jù),在保證了傳輸可靠性的基礎(chǔ)上提高了主元數(shù)據(jù)服務(wù)器數(shù)據(jù)操作的效率,主元數(shù)據(jù)服務(wù)器根據(jù)操作的備份類型,主動進行推送,可以區(qū)分重要數(shù)據(jù)與非重要數(shù)據(jù),從而制定對應(yīng)的備份策略,保證了重要的數(shù)據(jù)可以及時備份至備元數(shù)據(jù)數(shù)據(jù)服務(wù)器保存,且主元數(shù)據(jù)服務(wù)器可以根據(jù)自身的業(yè)務(wù)情況,如負載信息等,制定備份時間點,從而提高了主元數(shù)據(jù)服務(wù)器的業(yè)務(wù)處理效率。
[0015]較佳地,所述主元數(shù)據(jù)服務(wù)器根據(jù)所述備份類型將所述指定內(nèi)存中的數(shù)據(jù)發(fā)送至所述備元數(shù)據(jù)服務(wù)器,包括:
[0016]所述主元數(shù)據(jù)服務(wù)器根據(jù)所述備份類型,確定對應(yīng)的備份條件,確定所述備份條件滿足后,將所述指定內(nèi)存中的數(shù)據(jù)發(fā)送至所述備元數(shù)據(jù)服務(wù)器。
[0017]通過這種方法,根據(jù)不同的備份類型,在不同的時機將數(shù)據(jù)發(fā)送至備元數(shù)據(jù)服務(wù)器,主元數(shù)據(jù)服務(wù)器根據(jù)操作的備份類型主動進行推送,可以區(qū)分重要數(shù)據(jù)與非重要數(shù)據(jù),從而制定對應(yīng)的備份策略。
[0018]較佳地,所述主元數(shù)據(jù)服務(wù)器根據(jù)所述備份類型,確定對應(yīng)的備份條件,包括:
[0019]所述主元數(shù)據(jù)服務(wù)器判定所述備份類型為重要時,確定對應(yīng)的備份條件為在所述指定內(nèi)存中的數(shù)據(jù)不為空;
[0020]所述主元數(shù)據(jù)服務(wù)器判定所述備份類型為非重要時,確定對應(yīng)的備份條件為所述主元數(shù)據(jù)服務(wù)器的負載信息未超過設(shè)定閾值。
[0021]采用這種方法,備份類型為重要時,處理后的數(shù)據(jù)保持在指定內(nèi)存時,對該處理后的數(shù)據(jù)備份至備元數(shù)據(jù)服務(wù)器;備份類型為非重要時,主元數(shù)據(jù)服務(wù)器根據(jù)自身的負載信息,確定在負載較低時進行備份,從而提高了主元數(shù)據(jù)服務(wù)器的業(yè)務(wù)處理效率。
[0022]較佳地,所述主元數(shù)據(jù)服務(wù)器的負載信息為中央處理器CPU剩余使用率、內(nèi)存剩余使用率、磁盤剩余容量、網(wǎng)絡(luò)剩余帶寬以及磁盤讀寫速度中的一種或任意組合。
[0023]通過這種方法,可以準確的獲取主元數(shù)據(jù)服務(wù)器的負載信息。
[0024]較佳地,將所述指定內(nèi)存中的數(shù)據(jù)發(fā)送至所述備元數(shù)據(jù)服務(wù)器,包括:
[0025]所述主元數(shù)據(jù)服務(wù)器判定所述備份類型為重要時,將所述指定內(nèi)存中的數(shù)據(jù)發(fā)送至所述備元數(shù)據(jù)服務(wù)器,同時,將所述指定內(nèi)存中的數(shù)據(jù)持久化保存至所述主元數(shù)據(jù)服務(wù)器;
[0026]所述主元數(shù)據(jù)服務(wù)器判定所述備份類型為非重要時,將所述指定內(nèi)存中的數(shù)據(jù)持久化保存至所述主元數(shù)據(jù)服務(wù)器后,將所述指定內(nèi)存中的數(shù)據(jù)發(fā)送至所述備元數(shù)據(jù)服務(wù)器。
[0027]采用這種方法,主元數(shù)據(jù)服務(wù)器判定備份類型為重要時,在將指定內(nèi)存中的數(shù)據(jù)發(fā)送至備元數(shù)據(jù)服務(wù)器的同時,將指定內(nèi)存中的數(shù)據(jù)持久化保存至主元數(shù)據(jù)服務(wù)器,可以保證以最快的速度將數(shù)據(jù)備份至備元數(shù)據(jù)服務(wù)器;對于非總要的數(shù)據(jù),主元數(shù)據(jù)服務(wù)器在持久化后,在指定時機進行備份,從而提高了主元數(shù)據(jù)服務(wù)器的業(yè)務(wù)處理效率。
[0028]一種分布式文件系統(tǒng)的主備機制數(shù)據(jù)傳輸裝置,包括:
[0029]連接單元,用于確定備元數(shù)據(jù)服務(wù)器開機啟動后,與所述備元數(shù)據(jù)服務(wù)器建立連接;
[0030]處理單元,用于接收到客戶端發(fā)送的數(shù)據(jù)請求后,根據(jù)所述數(shù)據(jù)請求確定對應(yīng)的備份類型,并對所述數(shù)據(jù)請求攜帶的數(shù)據(jù)進行數(shù)據(jù)處理,以及將處理后的數(shù)據(jù)保存在指定內(nèi)存中;
[0031]發(fā)送單元,用于根據(jù)所述備份類型將所述指定內(nèi)存中的數(shù)據(jù)發(fā)送至所述備元數(shù)據(jù)服務(wù)器。
[0032]這樣,采用異步復(fù)制數(shù)據(jù),在保證了傳輸可靠性的基礎(chǔ)上提高了主元數(shù)據(jù)服務(wù)器數(shù)據(jù)操作的效率,主元數(shù)據(jù)服務(wù)器根據(jù)操作的備份類型,主動進行推送,可以區(qū)分重要數(shù)據(jù)與非重要數(shù)據(jù),從而制定對應(yīng)的備份策略,保證了重要的數(shù)據(jù)可以及時備份至備元數(shù)據(jù)數(shù)據(jù)服務(wù)器保存,且主元數(shù)據(jù)服務(wù)器可以根據(jù)自身的業(yè)務(wù)情況,如負載信息等,制定備份時間點,從而提高了主元數(shù)據(jù)服務(wù)器的業(yè)務(wù)處理效率。
[0033]較佳地,所述發(fā)送單元根據(jù)所述備份類型將所述指定內(nèi)存中的數(shù)據(jù)發(fā)送至所述備元數(shù)據(jù)服務(wù)器,包括:
[0034]所述發(fā)送單元根據(jù)所述備份類型,確定對應(yīng)的備份條件,確定所述備份條件滿足后,將所述指定內(nèi)存中的數(shù)據(jù)發(fā)送至所述備元數(shù)據(jù)服務(wù)器。
[0035]這樣,發(fā)送單元根據(jù)不同的備份類型,在不同的時機將數(shù)據(jù)發(fā)送至備元數(shù)據(jù)服務(wù)器,主元數(shù)據(jù)服務(wù)