亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種cdp中的塊級數(shù)據(jù)捕獲方法

文檔序號:6399895閱讀:297來源:國知局
專利名稱:一種cdp中的塊級數(shù)據(jù)捕獲方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種計算機(jī)應(yīng)用技術(shù)領(lǐng)域,尤其涉及一種CDP中的塊級數(shù)據(jù)捕獲方法。通過將數(shù)據(jù)捕獲和數(shù)據(jù)傳輸相互分離的方法以及采用內(nèi)核態(tài)緩存和用戶態(tài)緩存的兩級緩存的傳輸策略,可以提高用戶的讀寫性能,降低存儲設(shè)備的開銷,保證數(shù)據(jù)的可靠性以及降低內(nèi)存資源的使用,為CDP數(shù)據(jù)保護(hù)技術(shù)提供了一種很好的捕獲數(shù)據(jù)的方法。
背景技術(shù)
在現(xiàn)階段的容災(zāi)備份領(lǐng)域,⑶P技術(shù)是數(shù)據(jù)保護(hù)的一個重要方法,⑶P可以通過增量的方式實(shí)現(xiàn)數(shù)據(jù)保護(hù),它的實(shí)現(xiàn)主要是通過捕獲或跟蹤數(shù)據(jù)的變化,同時將這些變化的數(shù)據(jù)放在獨(dú)立于生產(chǎn)數(shù)據(jù)之外的地方,這樣可以確保用戶的數(shù)據(jù)恢復(fù)到過去的任意時間點(diǎn)。本發(fā)明針對CDP保護(hù)中塊級數(shù)據(jù)的捕獲問題存在的問題進(jìn)行分析研究,如何提高數(shù)據(jù)捕獲的效率成為本發(fā)明的切入點(diǎn)和實(shí)現(xiàn)點(diǎn)。
在現(xiàn)階段,針對CDP塊級數(shù)據(jù)保護(hù)的數(shù)據(jù)捕獲策略的實(shí)現(xiàn)過程中主要存在如下缺點(diǎn)。
1、傳統(tǒng)CDP實(shí)現(xiàn)數(shù)據(jù)的遠(yuǎn)程容災(zāi)方案需要通過iSCSI協(xié)議來實(shí)現(xiàn),這種方式的缺點(diǎn)是需要在客戶節(jié)點(diǎn)實(shí)現(xiàn)對遠(yuǎn)程CDP備份空間的管理,有一定復(fù)雜性;同時,他們采用的遠(yuǎn)程數(shù)據(jù)傳輸和數(shù)據(jù)捕獲是同步執(zhí)行的,這就牽扯到數(shù)據(jù)的傳輸效率和性能問題,這種方式中的塊級數(shù)據(jù)遠(yuǎn)程傳輸過程會影響存儲系統(tǒng)的性能; 2、傳統(tǒng)的CDP數(shù)據(jù)捕獲和傳輸都在內(nèi)核緩存空間內(nèi)完成,由于用戶的網(wǎng)絡(luò)和存儲設(shè)備的情況都千變?nèi)f化的,這就會導(dǎo)致數(shù)據(jù)遠(yuǎn)程傳輸會極大地影響內(nèi)核的性能,同時內(nèi)核緩存空間中有限的地址空間是會限制緩存的大小,所以在高負(fù)荷I / O時會出現(xiàn)緩存不夠,導(dǎo)致系統(tǒng)內(nèi)核崩潰的情況。發(fā)明內(nèi)容
本發(fā)明的目的是提供一種⑶P中的塊級數(shù)據(jù)捕獲方法。
本發(fā)明的目的是按以下方式實(shí)現(xiàn)的,在內(nèi)核緩存空間和用戶緩存空間分別采用內(nèi)核空間緩存模塊和用戶空間緩存模塊,在用戶空間緩存模塊中又設(shè)置了靜態(tài)緩存和動態(tài)緩存兩種級別的緩存機(jī)制,以及使用不同的緩存模塊進(jìn)行數(shù)據(jù)處理的兩級緩存的結(jié)構(gòu),在用戶空間緩存模塊采用動態(tài)緩存,在保證數(shù)據(jù)可靠性的前提下減少內(nèi)存資源的使用,提高了數(shù)據(jù)捕獲的性能和效率,提高了緩存的利用率,通過將數(shù)據(jù)捕獲和數(shù)據(jù)傳輸相互分離以及采用內(nèi)核空間緩存模塊和用戶空間緩存模塊的兩級緩存方法,提高用戶的讀寫性能,降低存儲設(shè)備的開銷,保證容災(zāi)方案的高效能和穩(wěn)定性。數(shù)據(jù)捕獲步驟如下: (1)用戶觸發(fā)寫操作,由通用塊層傳送給本專利中虛擬出來的I/ O捕獲標(biāo)記模塊,這個I / O捕獲標(biāo)記模塊通過修改這個數(shù)據(jù)塊的成員屬性,將這個模塊的處理請求重定向給能處理該請求的設(shè)備; (2)重定向?qū)懖僮?,在I/ O捕獲標(biāo)記模塊定義了一個回調(diào)函數(shù),它對上層傳下來的寫操作修改處理的設(shè)備的屬性后,將請求重定向到真實(shí)的物理設(shè)備,重新提交給通用塊設(shè)備層來處理; (3)重定向?qū)懖僮?,寫操作被通用塊設(shè)備層重定向給修改處理設(shè)備屬性值的的物理設(shè)備所對應(yīng)的驅(qū)動程序進(jìn)行處理; (4)重定向后的磁盤驅(qū)動程序完成寫磁盤操作; (5)重定向后的磁盤驅(qū)動程序向上層返回I/ O成功與否的標(biāo)志信息; (6)如果步驟(5)報告成功,則將寫操作的數(shù)據(jù)塊進(jìn)行捕獲,并加上元數(shù)據(jù)進(jìn)行數(shù)據(jù)塊的組合; (7)將組合后的數(shù)據(jù)塊傳輸?shù)竭h(yuǎn)程服務(wù)器進(jìn)行保存,用于以后數(shù)據(jù)的恢復(fù),失敗則跳過。
在緩存系統(tǒng)中,靜態(tài)緩存是在任務(wù)創(chuàng)建時分配的存儲空間,靜態(tài)緩存采用SSD硬盤作為緩存介質(zhì),緩存是保證任務(wù)正常運(yùn)行的必選緩存,大小由用戶根據(jù)自己的業(yè)務(wù)情況進(jìn)行選定和設(shè)置大小,動態(tài)緩存是在大量數(shù)據(jù)突發(fā)寫或者網(wǎng)絡(luò)速度降低導(dǎo)致靜態(tài)緩存不夠用時由系統(tǒng)動態(tài)分配的,而當(dāng)系統(tǒng)空閑時,系統(tǒng)的管理模塊會自動回收未使用的動態(tài)緩存,在滿足系統(tǒng)需要的前提下節(jié)省內(nèi)存資源。內(nèi)核空間緩存模塊類似于寄存器,用以暫存捕獲模塊捕獲的數(shù)據(jù),等待轉(zhuǎn)發(fā)到用戶緩存中,轉(zhuǎn)發(fā)后才會釋放這部分緩存空間,再接受新的捕獲的數(shù)據(jù)。
通過系統(tǒng)內(nèi)核管理模塊在通用塊設(shè)備層之下進(jìn)行數(shù)據(jù)的捕獲,對每一個系統(tǒng)的寫操作請求進(jìn)行處理,這個模塊是一個虛擬設(shè)備,能夠?qū)/O請求做捕獲處理,處理包括對捕獲的數(shù)據(jù)打下時間戳標(biāo)記,記錄下那些操作的地址和寫操作的大小等元數(shù)據(jù)信息,然后將這些信息進(jìn)行保存更新,然后再重定向到實(shí)際存儲設(shè)備完成實(shí)際的I/O操作,這個模塊相當(dāng)于對所有的數(shù)據(jù)塊進(jìn)行一個處理設(shè)備的指定,以此降低了通用塊設(shè)備層的處理繁忙性,即在通用塊設(shè)備層和物理設(shè)備的驅(qū)動程序中添加了一個虛擬設(shè)備的中間件。
內(nèi)核緩存空間與用戶緩存空間之間數(shù)據(jù)交互分成兩部分,一部分是控制信息,對于這部分的信息使用netlink進(jìn)行雙向傳輸,達(dá)到兩個空間內(nèi)管理模塊的快速交互;另一部分是數(shù)據(jù)信息,這部分信息是內(nèi)核空緩存間到用戶緩存空間的數(shù)據(jù)拷貝.對于這部分信息采用_ap內(nèi)存映射機(jī)制結(jié)合memcpy數(shù)據(jù)拷貝方式來實(shí)現(xiàn)內(nèi)核緩存空間和用戶緩存空間緩存之間的數(shù)據(jù)拷貝以提高用戶數(shù)據(jù)傳輸速度和提高交互的可靠性。
本發(fā)明的有益效果是:通過高效的塊級數(shù)據(jù)捕獲和數(shù)據(jù)傳輸方法,將數(shù)據(jù)捕獲和數(shù)據(jù)傳輸相互分離以及采用內(nèi)核態(tài)緩存和用戶態(tài)緩存的兩級緩存策略,可以提高用戶的讀寫性能,降低存儲設(shè)備的開銷,保證容災(zāi)方案的高效能和穩(wěn)定性。


圖1是本發(fā)明的軟件架構(gòu)實(shí)現(xiàn)結(jié)構(gòu)圖; 圖2是本發(fā)明的數(shù)據(jù)捕獲、存儲、傳輸?shù)牧鞒虉D; 圖3是本發(fā)明中緩存機(jī)制的實(shí)現(xiàn)流程圖。
具體實(shí)施方式
參照附圖,下面將對本發(fā)明實(shí)施方案做進(jìn)一步詳細(xì)描述。
本發(fā)明的關(guān)于CDP中塊級數(shù)據(jù)的捕獲設(shè)計了一種高效的方法,是通過系統(tǒng)內(nèi)核管理模塊在通用塊設(shè)備層之下進(jìn)行數(shù)據(jù)的捕獲,對每一個系統(tǒng)的寫操作請求進(jìn)行處理,這個模塊是一個虛擬設(shè)備,能夠?qū)/o請求做捕獲處理,處理包括對捕獲的數(shù)據(jù)打下時間戳標(biāo)記,記錄下那些操作的地址和寫操作的大小等元數(shù)據(jù)信息,然后將這些信息進(jìn)行保存更新,然后再重定向到實(shí)際存儲設(shè)備完成實(shí)際的I/o操作,這個模塊相當(dāng)于對所有的數(shù)據(jù)塊進(jìn)行一個處理設(shè)備的指定,這就降低了通用塊設(shè)備層的處理,降低了其繁忙性。這種方法也就是在通用塊設(shè)備層和物理設(shè)備的驅(qū)動程序中添加了一個虛擬設(shè)備的中間件。
在本系統(tǒng)的緩存系統(tǒng)中,主要是用到了內(nèi)核空間緩存模塊和用戶空間緩存模塊。在用戶空間緩存模塊中又設(shè)置了靜態(tài)緩存和動態(tài)緩存兩種級別的緩存機(jī)制,靜態(tài)緩存是在任務(wù)創(chuàng)建時分配的存儲空間,這個靜態(tài)緩存我們采用SSD硬盤作為緩存介質(zhì),這個緩存是保證任務(wù)正常運(yùn)行的,是一個基本必選緩存,大小有用戶根據(jù)自己的業(yè)務(wù)情況進(jìn)行選定和設(shè)置大小。動態(tài)緩存是在大量數(shù)據(jù)突發(fā)寫或者網(wǎng)絡(luò)速度降低導(dǎo)致靜態(tài)緩存不夠用時由系統(tǒng)動態(tài)分配的,而當(dāng)系統(tǒng)空閑時,系統(tǒng)的管理模塊會自動回收未使用的動態(tài)緩存,在滿足系統(tǒng)需要的前提下節(jié)省內(nèi)存資源。內(nèi)核空間緩存模塊類似于寄存器,我們用它來暫存捕獲模塊捕獲的數(shù)據(jù),等待轉(zhuǎn)發(fā)到用戶緩存中,才會釋放這部分緩存空間。接受新的捕獲的數(shù)據(jù)。
主要的數(shù)據(jù)捕獲步驟如下: (1)用戶觸發(fā)寫操作,由通用塊層傳送給本專利中虛擬出來的I/ O捕獲標(biāo)記模塊,這個I / O捕獲標(biāo)記模塊通過修改這個數(shù)據(jù)塊的成員屬性,將這個模塊的處理請求重定向給能處理該請求的設(shè)備; (2)重定向?qū)懖僮?,在I/ O捕獲標(biāo)記模塊定義了一個回調(diào)函數(shù),它對上層傳下來的寫操作修改處理的設(shè)備的屬性后,將請求重定向到真實(shí)的物理設(shè)備,重新提交給通用塊設(shè)備層來處理; (3)重定向?qū)懖僮?,寫操作被通用塊設(shè)備層重定向給修改處理設(shè)備屬性值的的物理設(shè)備所對應(yīng)的驅(qū)動程序進(jìn)行處理; (4)重定向后的磁盤驅(qū)動程序完成寫磁盤操作; (5)重定向后的磁盤驅(qū)動程序向上層返回I/ O成功與否的標(biāo)志信息; (6)如果步驟5報告成功,則將寫操作的數(shù)據(jù)塊進(jìn)行捕獲,并加上元數(shù)據(jù)進(jìn)行數(shù)據(jù)塊的組合; (7)將組合后的數(shù)據(jù)塊傳輸?shù)竭h(yuǎn)程服務(wù)器進(jìn)行保存,用于以后數(shù)據(jù)的恢復(fù),失敗則跳過。
在本系統(tǒng)的緩存系統(tǒng)中,主要是用到了內(nèi)核空間緩存模塊和用戶空間緩存模塊。在用戶空間緩存模塊中又設(shè)置了靜態(tài)緩存和動態(tài)緩存兩種級別的緩存機(jī)制,靜態(tài)緩存是在任務(wù)創(chuàng)建時分配的存儲空間,這個靜態(tài)緩存采用SSD硬盤作為緩存介質(zhì),這個緩存是保證任務(wù)正常運(yùn)行的,是一個基本必選緩存,大小有用戶根據(jù)自己的業(yè)務(wù)情況進(jìn)行選定和設(shè)置大小。動態(tài)緩存是在大量數(shù)據(jù)突發(fā)寫或者網(wǎng)絡(luò)速度降低導(dǎo)致靜態(tài)緩存不夠用時由系統(tǒng)動態(tài)分配的,而當(dāng)系統(tǒng)空閑時,系統(tǒng)的管理模塊會自動回收未使用的動態(tài)緩存,在滿足系統(tǒng)需要的前提下節(jié)省內(nèi)存資源。內(nèi)核空間緩存模塊類似于寄存器,用它來暫存捕獲模塊捕獲的數(shù)據(jù),等待轉(zhuǎn)發(fā)到用戶緩存中,才會釋放這部分緩存空間。接受新的捕獲的數(shù)據(jù)。
在本系統(tǒng)中,內(nèi)核緩存空間與用戶緩存空間之間數(shù)據(jù)交互分成兩部分,一部分是控制信息,對于這部分的信息本發(fā)明使用netlink進(jìn)行雙向傳輸,達(dá)到兩個空間內(nèi)管理模塊的快速交互;另一部分是數(shù)據(jù)信息,這部分在主要是內(nèi)核緩存空間到用戶緩存空間的數(shù)據(jù)拷貝.對于這部分信息本發(fā)明中采用mmap內(nèi)存映射機(jī)制結(jié)合memcpy數(shù)據(jù)拷貝方式來實(shí)現(xiàn)內(nèi)核緩存空間和用戶緩存空間緩存之間的數(shù)據(jù)拷貝。
除說明書所述的技術(shù)特征外,均為本專業(yè)技術(shù)人員的已知技術(shù)。
權(quán)利要求
1.一種CDP中的塊級數(shù)據(jù)捕獲方法,其特征在于在內(nèi)核緩存空間和用戶緩存空間分別采用內(nèi)核空間緩存模塊和用戶空間緩存模塊,在用戶空間緩存模塊中又設(shè)置了靜態(tài)緩存和動態(tài)緩存兩種級別的緩存機(jī)制,以及使用不同的緩存模塊進(jìn)行數(shù)據(jù)處理的兩級緩存的結(jié)構(gòu),在用戶空間緩存模塊采用動態(tài)緩存,在保證數(shù)據(jù)可靠性的前提下減少內(nèi)存資源的使用,提高了數(shù)據(jù)捕獲的性能和效率,提高了緩存的利用率,通過將數(shù)據(jù)捕獲和數(shù)據(jù)傳輸相互分離以及采用內(nèi)核空間緩存模塊和用戶空間緩存模塊的兩級緩存方法,提高用戶的讀寫性能,降低存儲設(shè)備的開銷,保證容災(zāi)方案的高效能和穩(wěn)定性,數(shù)據(jù)捕獲步驟如下: (1)用戶觸發(fā)寫操作,由通用塊層傳送給本專利中虛擬出來的I/ O捕獲標(biāo)記模塊,這個I / O捕獲標(biāo)記模塊通過修改這個數(shù)據(jù)塊的成員屬性,將這個模塊的處理請求重定向給能處理該請求的設(shè)備; (2)重定向?qū)懖僮鳎贗/ O捕獲標(biāo)記模塊定義了一個回調(diào)函數(shù),它對上層傳下來的寫操作修改處理的設(shè)備的屬性后,將請求重定向到真實(shí)的物理設(shè)備,重新提交給通用塊設(shè)備層來處理; (3)重定向?qū)懖僮鳎瑢懖僮鞅煌ㄓ脡K設(shè)備層重定向給修改處理設(shè)備屬性值的的物理設(shè)備所對應(yīng)的驅(qū)動程序進(jìn)行處理; (4)重定向后的磁盤驅(qū)動程序完成寫磁盤操作; (5)重定向后的磁盤驅(qū)動程序向上層返回I/ O成功與否的標(biāo)志信息; (6)如果步驟(5)報告成功,則將寫操作的數(shù)據(jù)塊進(jìn)行捕獲,并加上元數(shù)據(jù)進(jìn)行數(shù)據(jù)塊的組合; (7)將組合后的數(shù)據(jù)塊傳輸?shù)竭h(yuǎn)程服務(wù)器進(jìn)行保存,用于以后數(shù)據(jù)的恢復(fù),失敗則跳過。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于在緩存系統(tǒng)中,靜態(tài)緩存是在任務(wù)創(chuàng)建時分配的存儲空間,靜態(tài)緩存采用SSD硬盤作為緩存介質(zhì),緩存是保證任務(wù)正常運(yùn)行的必選緩存,大小由用戶根據(jù)自己的業(yè)務(wù)情況進(jìn)行選定和設(shè)置大小,動態(tài)緩存是在大量數(shù)據(jù)突發(fā)寫或者網(wǎng)絡(luò)速度降低導(dǎo)致靜態(tài)緩存不夠用時由系統(tǒng)動態(tài)分配的,而當(dāng)系統(tǒng)空閑時,系統(tǒng)的管理模塊會自動回收未使用的動態(tài)緩存,在滿足系統(tǒng)需要的前提下節(jié)省內(nèi)存資源,內(nèi)核空間緩存模塊類似于寄存器,用以暫存捕獲模塊捕獲的數(shù)據(jù),等待轉(zhuǎn)發(fā)到用戶緩存中,轉(zhuǎn)發(fā)后才會釋放這部分緩存空間,再接受新的捕獲的數(shù)據(jù)。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于通過系統(tǒng)內(nèi)核管理模塊在通用塊設(shè)備層之下進(jìn)行數(shù)據(jù)的捕獲,對每 一個系統(tǒng)的寫操作請求進(jìn)行處理,這個模塊是一個虛擬設(shè)備,能夠?qū)/o請求做捕獲處理,處理包括對捕獲的數(shù)據(jù)打下時間戳標(biāo)記,記錄下那些操作的地址和寫操作的大小等元數(shù)據(jù)信息,然后將這些信息進(jìn)行保存更新,然后再重定向到實(shí)際存儲設(shè)備完成實(shí)際的I/o操作,這個模塊相當(dāng)于對所有的數(shù)據(jù)塊進(jìn)行一個處理設(shè)備的指定,以此降低了通用塊設(shè)備層的處理繁忙性,即在通用塊設(shè)備層和物理設(shè)備的驅(qū)動程序中添加了一個虛擬設(shè)備的中間件。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于:內(nèi)核緩存空間與用戶緩存空間之間數(shù)據(jù)交互分成兩部分,一部分是控制信息,對于這部分的信息使用netlink進(jìn)行雙向傳輸,達(dá)到兩個空間內(nèi)管理模塊的快速交互;另一部分是數(shù)據(jù)信息,這部分信息是內(nèi)核空緩存間到用戶緩存空間的數(shù)據(jù)拷貝.對于這部分信息采用mmap內(nèi)存映射機(jī)制結(jié)合memcpy數(shù)據(jù)拷貝方式來實(shí)現(xiàn)內(nèi)核緩存空間和用戶緩存空間緩存之間的數(shù)據(jù)拷貝以提高用戶數(shù)據(jù)傳輸速度和 提高交互的可靠性。
全文摘要
本發(fā)明提供一種CDP中的塊級數(shù)據(jù)捕獲方法,在內(nèi)核緩存空間和用戶緩存空間分別采用內(nèi)核空間緩存模塊和用戶空間緩存模塊,在用戶空間緩存模塊中又設(shè)置了靜態(tài)緩存和動態(tài)緩存兩種級別的緩存機(jī)制,以及使用不同的緩存模塊進(jìn)行數(shù)據(jù)處理的兩級緩存的結(jié)構(gòu),在用戶空間緩存模塊采用動態(tài)緩存,在保證數(shù)據(jù)可靠性的前提下減少內(nèi)存資源的使用,提高了數(shù)據(jù)捕獲的性能和效率,提高了緩存的利用率,通過將數(shù)據(jù)捕獲和數(shù)據(jù)傳輸相互分離以及采用內(nèi)核空間緩存模塊和用戶空間緩存模塊的兩級緩存方法,提高用戶的讀寫性能,降低存儲設(shè)備的開銷,保證容災(zāi)方案的高效能和穩(wěn)定性。
文檔編號G06F12/08GK103150268SQ20131006676
公開日2013年6月12日 申請日期2013年3月4日 優(yōu)先權(quán)日2013年3月4日
發(fā)明者張硯波, 王東風(fēng) 申請人:浪潮電子信息產(chǎn)業(yè)股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1